Fórum témák

» Több friss téma
Fórum » CPLD, FPGA - Miértek, hogyanok
Lapozás: OK   12 / 49
(#) eltexto válasza gtk hozzászólására (») Márc 15, 2008 /
 
Az előbbi "hogyan kell csinálni" arra vonatkozott, hogy nekem hosszú szimulációk kellettek. Az ISE-vel az ilyen hoszzú (1-5ms) testbench waveformot képtelen voltam megcsinálni. Miután megadtam az 1ms-es szimulációs időt, vagy 30 percig a homokórát néztem. Utána elmentettem és 3MB volt az egész. Hogy mit molyol fél órát rajta ? Aztán azt csináltam, hogy csak rövid tbw-t csináltam és a generált test forrást (vhw) átmásoltam egy modelsim új projekt könyvtárba, + a fent emlitett szimulációs modelt (..._timesim.vhd) és a kapukésleltetéseket tartalmazó sdf file-t. A vhw-nek adtam egy más nevet (test) és átneveztem vhd-re. Utána módositottam a stimulust az igényeim szerint és a 3 file-ra csináltam egy szimulációs konfigurációt (Add). Na, hogy ez menjen, nekem is jópár napomba telt.

Próbáld először ezt a Modelsim-es szimulációt egy rövid példán, amik ott vannak az ISE könnyvtárában. Aztán ha megy, utána válts a nagyobb projektre.

Üdv. Zoli
(#) gtk válasza eltexto hozzászólására (») Márc 16, 2008 /
 
Lehet hogy az alabbi a megoldas ??
Beleneztem a .vhw fileba es az alabbit modositottam :

  1. -- -------------  Current Time:  110ns
  2.                 WAIT FOR 110 ns;
  3.                 reset <= '1';
  4.                 -- -------------------------------------
  5.                 -- -------------  Current Time:  190ns
  6.                 WAIT FOR 80 ns;
  7.                 reset <= '0';
  8.                 -- -------------------------------------
  9.                 WAIT FOR 20 ms; -- MODOSITVA


Ezutan Simulate Behavioral Model eleg sok idot dolgozott,es ugytunik vegre elkeszult a diagramm
Mostmar csak az a kerdes hogy hogy tudok a leghatasosabban nyomkovetni, mit is kellene mihez visznyitani? , (hol nem szinkron a dolog, miert van ez a "szin keses"). Egylore csak a colormap -et raktam fel ..

Udv.
(#) gtk hozzászólása Márc 16, 2008 /
 
Kozben rajottem hogy a block RAMok adatai nem jelennek meg. A konstans ertekekkel feltoltott ROM adatai sem. Ezert a block ramok altal inicializalt regiszterek is undefined-ek.
A processzor altal inicializalt reg.-ek ertekei is ismeretlenek.

Mi lehet ezekre a megoldas?

Udv.

ise_sim1.jpg
    
(#) eltexto válasza gtk hozzászólására (») Márc 17, 2008 /
 
Most Modelsim-el szimulálsz vagy az ISE TBW windownak legyártattod csak vele az Expected Simulation Result-ot, amivel frissiti az ISE TBW window-ját. A Post Place&Route model-t szimuláltasd a Modelsim-mel. Ott fel lehet rakni a Block ramot egy objectként, vagy csak a kérdéses signaljait, bus-ait. Az ISE tbw windowjában csak a input waveformot kell szerkeszteni, aztán amikor elinditod a Modelsim szimulációt akkor elötte az ISE PrjNav. legyártja a test stimulust a tbw window waveformja alapján a vhw file-ba, megcsinálja a tdo ( a test futtató makrót. tdo: test do) és ezzel inditja a Modelsimet. A process ablakban a szimulációnál az opcióknál be lehet állitani a simulation run time-t és a resolution-t is. A régi verziókban siman -all opció volt a run time alapbeállitás, de most az újaknál állandó kavirc van, ezzel hogy szinkronba hozzam mindig a testbenh windowban beállitott szimulációs idővel. Igaz -all -al még nem próbáltam. Ja, de igen, próbáltam. Azért nem jó az -all, mert a réginél a vhw file-ba generált az ISE, a legutolsó WAIT urtán, leállitó ASSERTION sorokat:

  1. ASSERT (FALSE) REPORT
  2. "Simulation successful (not a failure).  No problems detected. "
  3. SEVERITY FAILURE;


Ez állitotta le -all - ból a szimulációt. Ez az új vhw file-okba nem generálódik. Ha a tbw window 1us hoszzú a szimuláció run time meg 4us, akkor az 1us után nem áll meg mint régen, hanem még háromszor megismétli.

Üdv. Zoli
(#) gtk válasza eltexto hozzászólására (») Márc 17, 2008 /
 
Koszi !

Idézet:
„Azért nem jó az -all, mert a réginél a vhw file-ba generált az ISE, a legutolsó WAIT urtán, leállitó ASSERTION sorokat:

ASSERT (FALSE) REPORT "Simulation successful (not a failure). No problems detected. " SEVERITY FAILURE;”


Korabban nekem is mindig ezzel allt le.
Most hogy beirtam a
  1. wait for 20 ms
-t igy most legeneralja a waveformot.(ahogy korabban emlitettem)

Most akkor kiprobalom ujra Modelsim-el.

Udv.
(#) gtk válasza eltexto hozzászólására (») Márc 17, 2008 /
 
Szia !

Na vegre sikerult Modelsim alatt , es 20 ms-os wave-ot is sikerult generalni. Eleg sokat dolgozott vele.

Egyes buszokat nem talalok. Pl. a video ram es colormap ugyanabbol a componensbol van peldanyositva. ezert ugy latszik hogy a
  1. color_map_rdataa_in_0
buszra irodik a karakter; (ez a busz az osszefogott block ram-okbol a nulladdik bemenete. Namost ehhez a buszhoz kapcsolodo regiszter bemenetet pl nem talalni.)

Itt az RGB erteke kellene legyen, ez viszont latszik a processzor out portjan a megfelelo port ID es write_strobe -jelnel. Na de igy elegge nehezen kovetheto a folyamat.

Szoval nem tudom mennyire erthetoen irtam..

Udv.

(#) kissi hozzászólása Márc 27, 2008 /
 
Sziasztok!

Kezdő vagyok még a témában, elnézést, ha túl láma a kérdésem...
Felraktam a XILINX ISE WebPack 10.1-et
Schematic-ban dolgozom XC9572XL CPLD-vel és az a problémám, hogy a lábak hozzárendelését nem tudom megoldani valami számomra "láthatatlan" ok ( beállítás?) miatt! A fordítások lemennek, a Create Timing Constraints-ban látszanak az általam definiált lábak, de a Floorplan IO-Pre-Synthesis (ez is érdekes, mert a help-ben POST-nak írja!) már nem jelentkeznek az általam definiált elnevezések, ott csak "C, CLR, D és Q" nevek szerepelnek, amelyeket én nem is definiáltam.
( a képen mellékeltem!)
Remélem nem volt nagyon talányos a megfogalmazás...):

Előre is köszönöm a segítséget!

Steve

XILINX.JPG
    
(#) gtk hozzászólása Ápr 15, 2008 /
 
Sziasztok !

Van egy TS-7200 ARM gepem. Ehhez szeretnek illeszteni egy grafikus VGA meghajtot . Ezt a feladatot latna el a Spartan3e.
Valami open core -t szeretnek ra rakni; melyik buszra es milyen vga meghajtot lehetne pakolni?
Tudtok adni valami otletet hol induljak el?

Udv. gtk
(#) gtk hozzászólása Ápr 28, 2008 /
 
Sziasztok !

SDRAMot szeretnek hasznalni egy mar megirt core-val.
A core UCF_file-jaban az alabbit nem ertem, hogy mi is az a dqmh, dqml, SDRAM_clock_out. Ezeket a Spartan kit adatlapjaban nem talalom...

  1. NET "dqmh"
  2. NET "dqml"  
  3. NET "SDRAM_clock_out"


(#) Rikfic hozzászólása Jún 5, 2008 /
 
Üdv Mindenkink!

A ChipCAD Kft. -nél már időtlen idők óta meg van hirdetve egy Xilinx tanfolyam, de az időpontját még mindig nem rakták ki. Már egy tucat e-mail-t küldtem nekik, hogy megkérdezzem, mikor lesz, de nem hajlandóak válaszolni! Mit tudtok a tanfolyamról?
(#) pokot válasza Rikfic hozzászólására (») Jún 5, 2008 /
 
Nekünk (céges levél) válaszoltak. idézem:

Köszönöm érdeklődését.

Sajnos egyenlőre nem tudjuk még kitűzni a soron következő Xilinx tanfolyamunk dátumát.

Előreláthatólag leghamarabb 1-2 hónap múlva lesz a következő.

Az általunk tartott oktatás kezdő Xilinx felhasználók számára lett kitalálva, hogy segítsünk az elindulásban.

Amennyiben mélyebb ismereteket szeretne szerezni erről a témáról, javaslom nézze meg a BME, 3 napos tanfolyamáról szóló kiírást:

http://szakkepzes.mit.bme.hu/tanfolyamok/digitalis_rendszerek.html





Üdvözlettel,



Farkas Szabolcs

Alkalmazástechnikai mérnök

remélem segítettem.
(#) Rikfic válasza pokot hozzászólására (») Jún 5, 2008 /
 
Kedves Pokot!

Köszönöm a hozzászólásod, remélem a nyáron tényleg sor kerül a tanfolyamra. Naponta figyelem a honlapot, hogy mikor hirdetik meg a dátumot. Remélem összefutunk az előadáson

Köszi mégegyszer!

bye
(#) bbatka hozzászólása Jún 5, 2008 /
 
Segítségeteket kérem. Elkezdtem én CPLD programozással foglalkozni. Küszködök rendesen.
Egy resetelhető 16 bites számlálót próbálok összehozni. A 16 bites számláló müködik is, de ha a megjegyzésbe tett reset engedélyezésre vonatkozó 2 sort is befordítom, akkor resetre le is nulláz. Eddig oké is lenne csakhogy 8 bites számlálóként müködik ettől kezdve és elérve a 255-ös értéket mindig magától újra indul. Gondolom ismerős forrás.


entity szaml is
Port (CLK : in std_logic;
RESET : in std_logic;
START : in std_logic;
OSZT : in std_logic_vector(4 downto 0);
LED : out std_logic_vector(15 downto 0));
end szaml;
Architecture rtl of szaml is
signal count: std_logic_vector(15 downto 0); --15 bites szamlalo
signal cnt_2: std_logic_vector(15 downto 0); --15 bites -
begin
LED <= cnt_2(15 downto 0); --ledek a 15 bites szamlalon
process(RESET,CLK) --processz
begin
--if RESET='0' then
--cnt_2 <= "0000000000000000";
if CLK'event and CLK='1' then --felfuto el detektalas
count <= count-1; --count leptetese
if count = 0 then -- count 0. ertekenek erzekelese
cnt_2 <= cnt_2 + 1; -- cnt_2 leptetese
end if;
end if;
end process;
end rtl;>>>>
(#) bbatka hozzászólása Jún 5, 2008 /
 
Átírtam kicsit a programot. Így eddig úgy tűnik jól müködik a módosított program, de azért érdekel hogy mi az előző hibája. Az előző programnál természetesen a megjegyzés után következő sor elsif -fel kezdődik és nem if-el , amikor a megjegyzésben lévő részt is befordítom.

entity szaml is
Port (CLK : in std_logic;
RESET : in std_logic;
START : in std_logic;
OSZT : in std_logic_vector(4 downto 0);
LED : out std_logic_vector(15 downto 0));
end szaml;
Architecture rtl of szaml is
signal count: std_logic_vector(15 downto 0); --15 bites szamlalo
signal cnt_2: std_logic_vector(15 downto 0); --15 bites -
begin
LED <= cnt_2(15 downto 0); --ledek a 15 bites szamlalon
process(RESET,CLK) --processz
begin
--if RESET='0' then
--cnt_2 <= "0000000000000000";
if CLK'event and CLK='1' then --felfuto el detektalas
if RESET='0' then
cnt_2 <= "0000000000000000";
end if;
count <= count-1; --count leptetese
if count = 0 then -- count 0. ertekenek erzekelese
cnt_2 <= cnt_2 + 1; -- cnt_2 leptetese
end if;
end if;
end process;
end rtl;>
(#) gtk válasza bbatka hozzászólására (») Jún 5, 2008 /
 
VHDL kodnal az a gond hogy sokfelekeppen le lehet irni ugyanazt, es nem mindenbol lesz hasznalhato hw.

Az elso kod egy rosszul sikerult asyncron reset.
A masodik szinkron resettel van (javitas utan), de, a ket szamlalohoz tartozo kodot kulon - kulon processben kellene irni.

Hasznalhato a [ code = vhdl ] [ / code ]
vagy [ code = ada ] [ / code ] szokozok nelkul. Az ada -s kodszinezes itt nekem jobban tetszik
(#) bbatka válasza gtk hozzászólására (») Jún 5, 2008 /
 
Értem. Átírtam az első hibás kódot szinkronba és tök jól müködik:




[code/ada]
if RESET='0'and CLK='0' then
cnt_2 <= "0000000000000000";
elsif CLK'event and CLK='1' then
[/code]>
(#) djszapi hozzászólása Júl 14, 2008 /
 
Üdv!

Annyi lenne a kérdésem, hogy egy teljes FPGA fejelsztési folyamat a PC oldalon kivitelezhető-e valamilyen linux disztribúció alatt (pl. Debian, Gentoo stb..)?

Láttam hogy Gtk-nak sikerült a webpacket, kpicosimet működésre bírni, azonban annyit ekll tudni a webpackről, hogy mivel ingyenes, korlátokkal is rendelkezik.

Tehát egy komolyabb Virtex kód generálására teljesen alkalmatlan, esetenként egy angyobb Spartan kóddal sem bírkózik meg.

A kollegák vindóz alól az ISE project Navigatort hasznaljak, ami szinten "korlatlan" lehetosegekkel bir!

Ja igen es VHDL kodolasos megoldas erdekelne, nem ilyen rajzolgatos, nem verilog, stb..
(#) djszapi hozzászólása Aug 5, 2008 /
 
Miért nem látom dpeti hozzászólását itt? Holott ha rákeresek az FPGA fórumtémára ezt írja ki:
CPLD, FPGA - Miértek, hogyanok...
Válaszok: 348, Olvasva: 27433, Lapozás: [1 ... 22, 23, 24] Tomee
Dec 2, 2006 dpeti
Júl 14, 2008

(#) Thomas10100 hozzászólása Aug 26, 2008 /
 
Sziasztok!

Azt szeretném megkérdezni hogy Xilinx XC9572 CPLD-t mivel tudom égetni? Tudtok kapcsolást, és programot?

Csak .jed fájl kell ?

Köszönöm!
(#) Prinner válasza Thomas10100 hozzászólására (») Aug 26, 2008 /
 
Xilinx paralell download cable kell hozzá, és az ise webpackban található egyik program ezt tudja kezelni.
A linkelt pdf-ben van kapcsolási rajz is: toolbox.xilinx.com/docsan/3_1i/pdf/docs/jtg/jtg.pdf
(#) gtk válasza Thomas10100 hozzászólására (») Aug 26, 2008 /
 
Nekem >>ez<< van es CPLDhez mukodik.
Lehet hogy a nyakterv is megvan hozza valahol, ha fontos megprobalom megkeresni.
(#) Gory hozzászólása Szept 1, 2008 /
 
Sziasztok!

CPLD-be lehet szintetizálni olyan multiplexert, aminek nem kell órajel, például a következő verilog kóddal.

module mux1( select, d, q );

input[1:0] select;
input[3:0] d;
output q;
wire q;
wire[1:0] select;
wire[3:0] d;
assign q = d[select];

endmodule

Ilyenkor a CPLD ténylegesen órajel nélkül is multiplexerként fog viselkedni, tehát ha nem kötök rá semmilyen órajelet, mint mondjuk egy 74HCT-s logikai IC? Ha igen akkor milyen sebességgel változhatnak a jelek a multiplexeren?
(#) pokot válasza Gory hozzászólására (») Szept 1, 2008 /
 
A Mux-ot simán és-vagy hálózattal realizálja sztem a verilog, tehát aszinkron működésű lesz, viszont hogy milyen gyorsan váltakozhatnak a jelek azt a cpld típusa fogja megszabni.
(#) Gory válasza pokot hozzászólására (») Szept 1, 2008 /
 
Köszi, erre tippeltem én is. Az adatlapban találtam pár adatot.
Internal toggle rate: 450MHz
Max. system freq: 256MHz
Max system freq2: 238MHz
Max external freq: 145 MHz
Max external freq2: 139 MHz

Konkrétan a CoolRunner II XC2C256-ról van szó.
Azt gyanítom hogy ezek alapján a maximális freki amit át tudok vinni egy aszinkron multiplexerrel az vagy 145 MHz vagy 139MHz. Jól gondolom?
(#) eltexto válasza Gory hozzászólására (») Szept 1, 2008 /
 
Hali !

ISE report mit mond a multiplexerre kapcsolódó input pin-re ? Ki szokta irni a timing reportba, hogy mennyivel lehet hajtani. Én hajtottam már túl az ISE által jelzett 80MHz-es input CLK-t, 133MHz-el. gond nélkül ment a cucc. Igaz, nem melegítettem, hütöttem meg.

Üdv. Zoli
(#) Gory válasza eltexto hozzászólására (») Szept 1, 2008 /
 
Még nem néztem meg, nem tudtam hogy ilyet is kiír. Kipróbálom mit mond.
(#) gtk hozzászólása Okt 18, 2008 /
 
Sziasztok !

Szeretnek a sp3e melle egy aramkort epiteni Hirose FX2 csatlakozoval. Nezegettem a sp3e adatlapban az erre vonatkozo reszeket, meg >>ezt<<
de meg mindig nem vilagos a labkiosztas. Eagle-hoz meg van lib-em, csak abban meg nem bizok es ott sem egyertelmu a labkiosztas.
Valakinek van otlete?

Udv.
(#) dpeti válasza gtk hozzászólására (») Okt 18, 2008 /
 
ezzel én is megszívtam...

aztán rájöttem, hogy igaz baromi pici betűkkel, de jelölve van a csatlakozón az hogy melyik az A, B és hol az 1-es
(#) gtk válasza dpeti hozzászólására (») Okt 18, 2008 /
 
Koszi !
'a1' es 'b1'-et megtalaltam. A sp3e boardon hogy lehet? Vagy ennek igy osszeteve talalnia kell?Ugyertem az 'a1' ott is az 'a1' lesz?
(#) dpeti válasza gtk hozzászólására (») Okt 18, 2008 /
 
igen, az elnevezés azonos
Következő: »»   12 / 49
Bejelentkezés

Belépés

Hirdetés
XDT.hu
Az oldalon sütiket használunk a helyes működéshez. Bővebb információt az adatvédelmi szabályzatban olvashatsz. Megértettem