západky generovány z procesu * yelp .......*

J

JacquesKleynhans

Guest
Ahoj mám malý zámek se problém někde pod nimiž I cant Zdá se, že vyřešení pls help.

Jak im velmi nový pro VHDL dont soudit

<img src="http://www.edaboard.com/images/smiles/icon_smile.gif" alt="Úsměv" border="0" />

...

Kód:proces (state_reg, nand_opr, nand_rdy, data_mem, data_in, data_in_reg, data_out_reg) - citlivost seznamzačítdata_in_next <= data_in_reg;

data_out_next <= data_out_reg;state_next <= nečinný;ready <= '0 ';případ state_reg jepři nečinnosti =>ready <= '1 ';počítadlo <= (ostatní => '0 ');pokud nand_rdy = '0 ', pakstate_next <= nečinný;elsif nand_opr = "000", pak - Reset státustate_next <= rst_1;elsif nand_opr = "001", pak - čtěte ID stavstate_next <= rid_1;elsif nand_opr = "010", pak - čtěte stránku stavustate_next <= read_1;elsif nand_opr = "011", pak - Napište Page státustate_next <= prog_1;elsif nand_opr = "100", pak - Smazat Blok státustate_next <= nečinný;elsif nand_opr = "101", pak - Přečtěte si status státustate_next <= stat_1;elsif nand_opr = "110", pak - Vyhrazené státu 1state_next <= nečinný;elsif nand_opr = "111" pak - Vyhrazené státu 2state_next <= nečinný;- Jinak - jakékoli jiné kombinace znaků- State_next <= nečinný;end if;
 
mmm ..hledat váš problém ...
Váš kód je trochu špinavá ...

pro zamezení západky, v mém případě, já používám case s výchozím případě ...
další tip ...Pokud chcete, aby se státní stroj a pořadí států je kontinuální například,

state1 -> state2 -> stavu 3 ->....-> Stav N

můžete použít šedý kód, aby se zabránilo dvěma nebo více bit přechod mezi státy ..

mmm Pokud to není problém ..nakopat do zadku pro mě dělat, když nic z toho nebylo stalo ..

pozdravy

 
Může mi někdo říct, proč to může casue latchup problém jakékoliv možná dejte mi možná řešení tohoto problému.

Kód:

když rid_5 =>počítadlo <= std_logic_vector (nepodepsané (počítadlo) 1);state_next <= rid_6;když rid_6 =>pokud nepodepsané (počítadlo) = 3 pak

state_next <= rid_7;

počítadlo <= (ostatní => '0 ');

jiný

state_next <= rid_5;

end if;když rid_7 =>

 
Ahoj,

Je čítač signál zámek?Máte přiřadit hodnotu proti i ve všech ostatních, kdy prohlášení?
Ve vašem asynchronní proces, je nutné přiřadit hodnotu všech signálů v celém kdy prohlášení, nebo použít výchozí hodnotu pro všechny signály.

Devas

 
Jak mohu zlepšit tuto pult systému jsem provedl příslušné oblasti tučně.V současné době tento kód funguje dokonale během pre synth, ale post synth zábava začíná.

Jsem opravdu snaží zbavit varování od firem Synplify.Západku varování je největší problém některých.Také když jsem komentář na můj pulty prostřednictvím kódu, tj. ty tučně zámek zmizí.Ale jak může čelit způsobit latchup.

Omlouváme se za dlouhý kus kódu, ale většina kódu se opakují.První část je můj stav stroje.Jakékoliv přispět ke zlepšení bude velice ocenili.

Kód:

- Nand_flash.vhd

- Jacques KleynhansKnihovna IEEE;

použití IEEE.std_logic_1164.all;

použití IEEE.NUMERIC_STD.all;Účetní jednotka je NAND_FLASH - entita prohlášení

port (

ČLK: v std_logic - Vstupní hodiny tohoto systému je 40 MHz

mem_clk: InOut std_logic - hodiny generované pll1 být 66.667MHz

rst_low: v std_logic - reset systému je obvykle nízká

data_in: InOut std_logic_vector (15 downto 0); - vstup dat a povelů

data_out: z std_logic_vector (15 downto 0); - výstup dat

data_mem: InOut std_logic_vector (15 downto 0); - data z pamětinand_rdy: v std_logic - signál z paměti přístroje, pouze dostupný při vysoké

nand_opr: v std_logic_vector (2 downto 0); - vybrat mezi RD / WR / vymazat / rd_id / rd_st

- Nand_ce: z std_logic - Pin bude vázána na zem

nand_cle: mimo std_logic;

nand_ale: mimo std_logic;

nand_we: mimo std_logic;

nand_re: mimo std_logic;

ready: z std_logic- Nand_wp: z std_logic

- Nand_lock: z std_logic);konec subjektu NAND_FLASH;architektura ARCH dne NAND_FLASH je------------------- Pll1 konkretizaci -----------------------

složka pll1port (POWERDOWN: v std_logic;

CLKA: v std_logic;

LOCK, GLA: mimo std_logic);

konce složky;

-------------------------------------------------- -------------Typ STATE_TYPE je(Idle, rst_1, rst_2, rst_3, - reset

rid_1, rid_2, rid_3, rid_4, rid_5, rid_6, rid_7, rid_8, rid_9 - přečtěte si id

prog_1, prog_2, prog_3, prog_4, prog_5, prog_6, prog_7, prog_8, prog_9, prog_10, prog_11, prog_12, prog_13, prog_14, prog_15, prog_16, prog_17, prog_18, prog_19, prog_20, prog_21, prog_22, prog_23, prog_24,

read_1, read_2, read_3, read_4, read_5, read_6, read_7, read_8, read_9, read_10, read_11, read_12, read_13, read_14, read_15, read_16, read_17, read_18, read_19, read_20,

stat_1, stat_2, stat_3, stat_4, stat_5, stat_6) - Státní seznam program stránkusignál state_reg, state_next: state_type;

signál data_in_reg, data_in_next, data_out_reg, data_out_next: std_logic_vector (15 downto 0);signál nand_cle_buf, nand_tri_buf, nand_ale_buf, nand_we_buf, nand_re_buf: std_logic - odstraněny nand_ce_buf

signál nand_cle_reg, nand_tri_reg, nand_ale_reg, nand_we_reg, nand_re_reg: std_logic - odstraněny nand_ce_regsignál pll_lock, oe: std_logic; signální pult: std_logic_vector (10 downto 0); [/ b]začítproces (pll_lock, rst_low)

začít

OE <= pll_lock a rst_low;

ukončení procesu;------------ Port mapování proměnných I / O -----------------pll1_1: pll1 port map (POWERDOWN => '1 ', CLKA => CLK, LOCK => pll_lock, GLA => mem_clk), - Více PLL signály mohou být přidány GLB, GLC- Nastavení registrů a státy, aby počáteční podmínkyproces (mem_clk, rst_low)začítif (rst_low = '0 '), pakstate_reg <= nečinný;

data_in_reg <= (ostatní => '0 ');

data_out_reg <= (ostatní => '0 ');

umožnit <= '0 ';

- Nand_ce_reg <= '0 '; - vždy nízká

nand_cle_reg <= '0 ';

nand_tri_reg <= '0 ';

nand_ale_reg <= '0 ';

nand_we_reg <= '1 ';

nand_re_reg <= '1 ';elsif (rising_edge (mem_clk)) pakstate_reg <= state_next;

data_in_reg <= data_in_next;

data_out_reg <= data_out_next;- Nand_ce_reg <= nand_ce_buf, vždy s nízkou při práci s 2gig flash jediného zemřít

nand_cle_reg <= nand_cle_buf;

nand_tri_reg <= nand_tri_buf;

nand_ale_reg <= nand_ale_buf;

nand_we_reg <= nand_we_buf;

nand_re_reg <= nand_re_buf;end if;ukončení procesu;- Další státní a funkční datové cesty směrování

proces (mem_clk, rst_low, state_reg, nand_opr, nand_rdy, data_mem, data_in, data_in_reg, data_out_reg) - citlivost seznamzačítdata_in_next <= data_in_reg;

data_out_next <= data_out_reg;state_next <= nečinný;ready <= '0 ';případ state_reg jepři nečinnosti =>ready <= '1 ';počítadlo <= (ostatní => '0 ');if (nand_rdy = '0 '), pakstate_next <= nečinný;elsif (nand_opr = "000"), pak - Reset státustate_next <= rst_1;elsif (nand_opr = "001"), pak - čtěte ID stavstate_next <= rid_1;elsif (nand_opr = "010"), pak - čtěte stránku stavustate_next <= read_1;elsif (nand_opr = "011"), pak - Napište Page státustate_next <= prog_1;elsif (nand_opr = "100"), pak - Vymazat Blok státustate_next <= nečinný;elsif (nand_opr = "101"), pak - Přečtěte si status státustate_next <= stat_1;elsif (nand_opr = "110"), pak - Vyhrazené státu 1state_next <= nečinný;elsif (nand_opr = "111"), pak - Vyhrazené státu 2state_next <= nečinný;ostatní - jiné kombinace znakůstate_next <= nečinný;end if;když rst_1 =>if (nand_rdy = '0 '), pak - Tento kus kódu bude kontrolovat, zda v paměti zařízení je připraveno, aby byl přístupný

state_next <= rst_1;

jiný

data_in_next <= "0000000011111111"; - 00FFh hex příkaz pro reset

state_next <= rst_2;

end if;když rst_2 =>state_next <= rst_3;když rst_3 =>state_next <= nečinný;když rid_1 =>data_in_next <= "0000000010010000"; - 0090h hex příkaz pro čtení idstate_next <= rid_2;když rid_2 =>state_next <= rid_3;když rid_3 =>data_in_next <= "0000000000000000"; - 0000h adresu příkaz Readi idstate_next <= rid_4;když rid_4 =>umožnit <= '1 ';počítadlo <= (ostatní => '0 ');state_next <= rid_5;, když rid_5 =>počítadlo <= std_logic_vector (nepodepsané (počítadlo) 1);state_next <= rid_6;když rid_6 =>pokud nepodepsané (počítadlo) = 3 pak

state_next <= rid_7;

počítadlo <= (ostatní => '0 ');

jiný

state_next <= rid_5;

end if;když rid_7 =>počítadlo <= std_logic_vector (nepodepsané (počítadlo) 1);state_next <= rid_8;když rid_8 =>pokud nepodepsané (počítadlo) = 5 pak

state_next <= rid_9;

počítadlo <= (ostatní => '0 ');

jiný

data_out_next <= data_mem - data jsou čtena z data_mem port

state_next <= rid_7;

end if;

[/ B]

když rid_9 =>state_next <= nečinný;když prog_1 =>data_in_next <= "0000000010000000"; - 80h příkaz použít pro programování stránkustate_next <= prog_2;když prog_2 =>state_next <= prog_3;když prog_3 =>data_in_next <= "0000000000000000"; - collomn adresa 1 Sloupec adresa je vázán na adresu každého individial slovo stránkystate_next <= prog_4;když prog_4 =>state_next <= prog_5;když prog_5 =>data_in_next <= "0000000000000000"; - sloupec adresa 2 sloupce adresa je vázán na adresu každého individial slovo stránkystate_next <= prog_6;když prog_6 =>state_next <= prog_7;když prog_7 =>data_in_next <= "0000000001000000"; - řádek adresa 1 adresa prvního bloku ..
Blok 1, blok 0 je vyhrazena pro BBMNGMNTstate_next <= prog_8;když prog_8 =>state_next <= prog_9;když prog_9 =>data_in_next <= "0000000000000000"; - řádek adresy 2 Adresa bloku MSB prvního bloku přirovnat k "0000"state_next <= prog_10;když prog_10 =>state_next <= prog_11;když prog_11 =>data_in_next <= "0000000000000000"; - ř. adresu 3 to bude vždy "0000" jen jeden Lun v systémustate_next <= prog_12;když prog_12 =>state_next <= prog_13;když prog_13 =>počítadlo <= std_logic_vector (nepodepsané (počítadlo) 1);state_next <= prog_14;když prog_14 =>pokud nepodepsané (pult) = 2 pakstate_next <= prog_15;

počítadlo <= (ostatní => '0 ');

jinak state_next <= prog_13;

end if;when prog_15 =>počítadlo <= std_logic_vector (nepodepsané (počítadlo) 1);state_next <= prog_16 - státy jsou opakované vytváření hodiny pro náskdyž prog_16 =>pokud nepodepsané (counter) = 1057 pakdata_in_next <= "0000000000010000"; - 0010h konci příkaz pro program stránkustate_next <= prog_17;

počítadlo <= (ostatní => '0 ');jinýdata_in_next <= data_in;

state_next <= prog_15;

end if;když prog_17 =>state_next <= prog_18;když prog_18 =>state_next <= prog_19;když prog_19 =>if (nand_rdy = '0 '), pakstate_next <= prog_19;

jiný

data_in_next <= "0000000001110000"; - 0070h příkaz status číst

state_next <= prog_20;

end if;když prog_20 =>state_next <= prog_21;když prog_21 =>počítadlo <= std_logic_vector (nepodepsané (počítadlo) 1);

state_next <= prog_22;když prog_22 =>pokud nepodepsané (pult) = 2 pakstate_next <= prog_23;

počítadlo <= (ostatní => '0 ');

jinak state_next <= prog_21;

end if;když prog_23 =>data_out_next <= data_mem - data jsou čtena z údajů v přístavustate_next <= prog_24;když prog_24 =>state_next <= nečinný;když read_1 =>data_in_next <= "0000000000000000"; - 00h příkaz pro čtení stránkystate_next <= read_2;když read_2 =>state_next <= read_3;když read_3 =>data_in_next <= "0000000000000000"; - collomn adresa 1state_next <= read_4;když read_4 =>state_next <= read_5;když read_5 =>data_in_next <= "0000000001000000"; - sloupec adresu 2state_next <= read_6;když read_6 =>state_next <= read_7;když read_7 =>data_in_next <= "0000000000000000"; - řádek adresa 1state_next <= read_8;když read_8 =>state_next <= read_9;když read_9 =>data_in_next <= "0000000000000000"; - řádek adresu 2state_next <= read_10;když read_10 =>state_next <= read_11;when read_11 =>data_in_next <= "0000000000000000"; - řádek adresu 3state_next <= read_12;když read_12 =>state_next <= read_13;když read_13 =>data_in_next <= "0000000000110000"; - 0010h konci příkaz pro program stránkustate_next <= read_14;když read_14 =>state_next <= read_15;když read_15 =>state_next <= read_16;když read_16 =>if (nand_rdy = '0 '), pak

state_next <= read_16;

jinak state_next <= read_17;

end if;když read_17 => - zpoždění státu před údaji bude číststate_next <= read_18;když read_18 =>počítadlo <= std_logic_vector (nepodepsané (počítadlo) 1);state_next <= read_19;když read_19 =>pokud nepodepsané (counter) = 1057 pakstate_next <= read_20;

počítadlo <= (ostatní => '0 ');

jiný

data_out_next <= data_mem;

state_next <= read_18;

end if;když read_20 =>state_next <= nečinný;když stat_1 =>data_in_next <= "0000000001110000"; - 0070h příkaz status číststate_next <= stat_2;když stat_2 =>state_next <= stat_3;když stat_3 =>počítadlo <= std_logic_vector (nepodepsané (počítadlo) 1);state_next <= stat_4;když stat_4 =>pokud nepodepsané (pult) = 2 pakstate_next <= stat_5;

počítadlo <= (ostatní => '0 ');

jinak state_next <= stat_3;

end if;když stat_5 =>data_out_next <= data_mem - data jsou čtena z nand_cad portstate_next <= stat_6;když stat_6 =>state_next <= nečinný;když ostatní => NULL;konec případu;ukončení procesu;- Diskutovat o výstup logikyproces (state_next)začít- Počáteční stav nastaví všechny kontrolní linky do výchozího stavunand_tri_buf <= '0 ';- Nand_ce_buf <= '0 ';nand_we_buf <= '1 ';nand_ale_buf <= '0 ';nand_cle_buf <= '0 ';nand_re_buf <= '1 ';případ state_next jepři nečinnosti =>když rst_1 =>když rst_2 =>nand_tri_buf <= '1 ';nand_cle_buf <= '1 ';- Nand_ce_buf <= '0 ';nand_we_buf <= '0 ';nand_ale_buf <= '0 ';nand_re_buf <= '1 ';když rst_3 =>nand_tri_buf <= '1 ';nand_cle_buf <= '0 ';- Nand_ce_buf <= '0 ';nand_we_buf <= '1 ';nand_ale_buf <= '0 ';nand_re_buf <= '1 ';když rid_1 =>když rid_2 =>nand_cle_buf <= '1 ';- Nand_ce_buf <= '0 ';nand_we_buf <= '0 ';nand_ale_buf <= '0 ';nand_re_buf <= '1 ';nand_tri_buf <= '1 ';když rid_3 =>nand_cle_buf <= '0 ';- Nand_ce_buf <= '0 ';nand_we_buf <= '1 ';nand_ale_buf <= '0 ';nand_re_buf <= '1 ';nand_tri_buf <= '1 ';když rid_4 =>nand_cle_buf <= '0 ';- Nand_ce_buf <= '0 ';nand_we_buf <= '0 ';nand_ale_buf <= '1 ';nand_re_buf <= '1 ';nand_tri_buf <= '1 ';když rid_5 =>
nand_cle_buf <= '0 ';- Nand_ce_buf <= '0 ';nand_we_buf <= '1 ';nand_ale_buf <= '1 ';nand_re_buf <= '1 ';nand_tri_buf <= '1 ';když rid_6 =>nand_cle_buf <= '0 ';- Nand_ce_buf <= '0 ';nand_we_buf <= '1 ';nand_ale_buf <= '1 ';nand_re_buf <= '1 ';nand_tri_buf <= '1 ';když rid_7 =>nand_cle_buf <= '0 ';- Nand_ce_buf <= '0 ';nand_we_buf <= '1 ';nand_ale_buf <= '0 ';nand_re_buf <= '1 ';nand_tri_buf <= '0 ';když rid_8 =>nand_cle_buf <= '0 ';- Nand_ce_buf <= '0 ';nand_we_buf <= '1 ';nand_ale_buf <= '0 ';nand_re_buf <= '0 ';nand_tri_buf <= '0 ';když rid_9 =>nand_cle_buf <= '0 ';- Nand_ce_buf <= '0 ';nand_we_buf <= '1 ';nand_ale_buf <= '0 ';nand_re_buf <= '1 ';nand_tri_buf <= '0 ';
když prog_1 =>když prog_2 =>nand_cle_buf <= '1 ';- Nand_ce_buf <= '0 ';nand_we_buf <= '0 ';nand_ale_buf <= '0 ';nand_re_buf <= '1 ';nand_tri_buf <= '1 ';když prog_3 =>nand_cle_buf <= '0 ';- Nand_ce_buf <= '0 ';nand_we_buf <= '1 ';nand_ale_buf <= '1 ';nand_re_buf <= '1 ';nand_tri_buf <= '1 ';když prog_4 =>nand_cle_buf <= '0 ';- Nand_ce_buf <= '0 ';nand_we_buf <= '0 ';nand_ale_buf <= '1 ';nand_re_buf <= '1 ';nand_tri_buf <= '1 ';když prog_5 =>nand_cle_buf <= '0 ';- Nand_ce_buf <= '0 ';nand_we_buf <= '1 ';nand_ale_buf <= '1 ';nand_re_buf <= '1 ';nand_tri_buf <= '1 ';když prog_6 =>nand_cle_buf <= '0 ';- Nand_ce_buf <= '0 ';nand_we_buf <= '0 ';nand_ale_buf <= '1 ';nand_re_buf <= '1 ';nand_tri_buf <= '1 ';když prog_7 =>nand_cle_buf <= '0 ';- Nand_ce_buf <= '0 ';nand_we_buf <= '1 ';nand_ale_buf <= '1 ';nand_re_buf <= '1 ';nand_tri_buf <= '1 ';když prog_8 =>nand_cle_buf <= '0 ';- Nand_ce_buf <= '0 ';nand_we_buf <= '0 ';nand_ale_buf <= '1 ';nand_re_buf <= '1 ';nand_tri_buf <= '1 ';když prog_9 =>nand_cle_buf <= '0 ';- Nand_ce_buf <= '0 ';nand_we_buf <= '1 ';nand_ale_buf <= '1 ';nand_re_buf <= '1 ';nand_tri_buf <= '1 ';když prog_10 =>nand_cle_buf <= '0 ';- Nand_ce_buf <= '0 ';nand_we_buf <= '0 ';nand_ale_buf <= '1 ';nand_re_buf <= '1 ';nand_tri_buf <= '1 ';když prog_11 =>nand_cle_buf <= '0 ';- Nand_ce_buf <= '0 ';nand_we_buf <= '1 ';nand_ale_buf <= '1 ';nand_re_buf <= '1 ';nand_tri_buf <= '1 ';když prog_12 =>nand_cle_buf <= '0 ';- Nand_ce_buf <= '0 ';nand_we_buf <= '0 ';nand_ale_buf <= '1 ';nand_re_buf <= '1 ';nand_tri_buf <= '1 ';když prog_13 =>nand_cle_buf <= '0 ';- Nand_ce_buf <= '0 ';nand_we_buf <= '1 ';nand_ale_buf <= '0 ';nand_re_buf <= '1 ';nand_tri_buf <= '1 ';když prog_14 =>nand_cle_buf <= '0 ';- Nand_ce_buf <= '0 ';nand_we_buf <= '1 ';nand_ale_buf <= '0 ';nand_re_buf <= '1 ';nand_tri_buf <= '1 ';když prog_15 =>nand_cle_buf <= '0 ';- Nand_ce_buf <= '0 ';nand_we_buf <= '0 ';nand_ale_buf <= '0 ';nand_re_buf <= '1 ';nand_tri_buf <= '1 ';když prog_16 =>nand_cle_buf <= '0 ';- Nand_ce_buf <= '0 ';nand_we_buf <= '1 ';nand_ale_buf <= '0 ';nand_re_buf <= '1 ';nand_tri_buf <= '1 ';když prog_17 =>nand_cle_buf <= '1 ';- Nand_ce_buf <= '0 ';nand_we_buf <= '0 ';nand_ale_buf <= '0 ';nand_re_buf <= '1 ';nand_tri_buf <= '1 ';když prog_18 =>nand_cle_buf <= '1 ';- Nand_ce_buf <= '0 ';nand_we_buf <= '1 ';nand_ale_buf <= '0 ';nand_re_buf <= '1 ';nand_tri_buf <= '1 ';když prog_19 =>nand_cle_buf <= '1 ';- Nand_ce_buf <= '0 ';nand_we_buf <= '1 ';nand_ale_buf <= '0 ';nand_re_buf <= '1 ';nand_tri_buf <= '1 ';když prog_20 =>nand_cle_buf <= '1 ';- Nand_ce_buf <= '0 ';nand_we_buf <= '0 ';nand_ale_buf <= '0 ';nand_re_buf <= 1 ';nand_tri_buf <= '1 ';když prog_21 =>nand_cle_buf <= '0 ';- Nand_ce_buf <= '0 ';nand_we_buf <= '1 ';nand_ale_buf <= '0 ';nand_re_buf <= '1 ';nand_tri_buf <= '1 ';když prog_22 =>nand_cle_buf <= '0 ';- Nand_ce_buf <= '0 ';nand_we_buf <= '1 ';nand_ale_buf <= '0 ';nand_re_buf <= '1 ';nand_tri_buf <= '1 ';když prog_23 =>nand_cle_buf <= '0 ';- Nand_ce_buf <= '0 ';nand_we_buf <= '1 ';nand_ale_buf <= '0 ';nand_re_buf <= '0 ';nand_tri_buf <= '0 ';když prog_24 =>nand_cle_buf <= '0 ';- Nand_ce_buf <= '0 ';nand_we_buf <= '1 ';nand_ale_buf <= '0 ';nand_re_buf <= '1 ';nand_tri_buf <= '0 ';když stat_1 =>nand_cle_buf <= '1 ';- Nand_ce_buf <= '0 ';nand_we_buf <= '1 ';nand_ale_buf <= '0 ';nand_re_buf <= '1 ';nand_tri_buf <= '1 ';když stat_2 =>nand_cle_buf <= '1 ';- Nand_ce_buf <= '0 ';nand_we_buf <= '0 ';nand_ale_buf <= '0 ';nand_re_buf <= '1 ';nand_tri_buf <= '1 ';když stat_3 =>nand_cle_buf <= '0 ';- Nand_ce_buf <= '0 ';nand_we_buf <= '1 ';nand_ale_buf <= '0 ';nand_re_buf <= '1 ';nand_tri_buf <= '1 ';když stat_4 =>nand_cle_buf <= '0 ';- Nand_ce_buf <= '0 ';nand_we_buf <= '1 ';nand_ale_buf <= '0 ';nand_re_buf <= '1 ';nand_tri_buf <= '1 ';když stat_5 =>nand_cle_buf <= '0 ';- Nand_ce_buf <= '0 ';nand_we_buf <= '1 ';nand_ale_buf <= '0 ';nand_re_buf <= '0 ';nand_tri_buf <= '0 ';když stat_6 =>nand_cle_buf <= '0 ';- Nand_ce_buf <= '0 ';nand_we_buf <= '1 ';nand_ale_buf <= '0 ';nand_re_buf <= '1 ';nand_tri_buf <= '0 ';když read_1 =>když read_2 =>nand_cle_buf <= '1 ';- Nand_ce_buf <= '0 ';nand_we_buf <= '0 ';nand_ale_buf <= '0 ';nand_re_buf <= '1 ';nand_tri_buf <= '1 ';když read_3 =>nand_cle_buf <= '1 ';- Nand_ce_buf <= '0 ';nand_we_buf <= '1 ';nand_ale_buf <= '0 ';nand_re_buf <= '1 ';nand_tri_buf <= '1 ';když read_4 =>nand_cle_buf <= '0 ';- Nand_ce_buf <= '0 ';nand_we_buf <= '0 ';nand_ale_buf <= '1 ';nand_re_buf <= '1 ';nand_tri_buf <= '1 ';když read_5 =>nand_cle_buf <= '0 ';- Nand_ce_buf <= '0 ';nand_we_buf <= '1 ';nand_ale_buf <= '1 ';nand_re_buf <= '1 ';nand_tri_buf <= '1 ';když read_6 =>nand_cle_buf <= '0 ';- Nand_ce_buf <= '0 ';nand_we_buf <= '0 ';nand_ale_buf <= '1 ';nand_re_buf <= '1 ';nand_tri_buf <= '1 ';když read_7 =>nand_cle_buf <= '0 ';- Nand_ce_buf <= '0 ';nand_we_buf <= '1 ';nand_ale_buf <= '1 ';nand_re_buf <= '1 ';nand_tri_buf <= '1 ';když read_8 =>nand_cle_buf <= '0 ';- Nand_ce_buf <= '0 ';nand_we_buf <= '0 ';nand_ale_buf <= '1 ';nand_re_buf <= '1 ';nand_tri_buf <= '1 ';když read_9 =>nand_cle_buf <= '0 ';- Nand_ce_buf <= 0 ';nand_we_buf <= '1 ';nand_ale_buf <= '1 ';nand_re_buf <= '1 ';nand_tri_buf <= '1 ';když read_10 =>nand_cle_buf <= '0 ';- Nand_ce_buf <= '0 ';nand_we_buf <= '0 ';nand_ale_buf <= '1 ';nand_re_buf <= '1 ';nand_tri_buf <= '1 ';když read_11 =>nand_cle_buf <= '0 ';- Nand_ce_buf <= '0 ';nand_we_buf <= '1 ';nand_ale_buf <= '1 ';nand_re_buf <= '1 ';nand_tri_buf <= '1 ';když read_12 =>nand_cle_buf <= '0 ';- Nand_ce_buf <= '0 ';nand_we_buf <= '0 ';nand_ale_buf <= '1 ';nand_re_buf <= '1 ';nand_tri_buf <= '1 ';když read_13 =>nand_cle_buf <= '1 ';- Nand_ce_buf <= '0 ';nand_we_buf <= '1 ';nand_ale_buf <= '1 ';nand_re_buf <= '1 ';nand_tri_buf <= '1 ';když read_14 =>nand_cle_buf <= '1 ';- Nand_ce_buf <= '0 ';nand_we_buf <= '0 ';nand_ale_buf <= '0 ';nand_re_buf <= '1 ';nand_tri_buf <= '1 ';když read_15 =>nand_cle_buf <= '0 ';- Nand_ce_buf <= '0 ';nand_we_buf <= '1 ';nand_ale_buf <= '0 ';nand_re_buf <= '1 ';nand_tri_buf <= '1 ';když read_16 =>nand_cle_buf <= '0 ';- Nand_ce_buf <= '0 ';nand_we_buf <= '1 ';nand_ale_buf <= '0 ';nand_re_buf <= '1 ';nand_tri_buf <= '1 ';když read_17 =>nand_cle_buf <= '0 ';- Nand_ce_buf <= '0 ';nand_we_buf <= '1 ';nand_ale_buf <= '0 ';nand_re_buf <= '1 ';nand_tri_buf <= '1 ';když read_18 =>nand_cle_buf <= '0 ';- Nand_ce_buf <= '0 ';nand_we_buf <= '1 ';nand_ale_buf <= '0 ';nand_re_buf <= '0 ';nand_tri_buf <= '0 ';když read_19 =>nand_cle_buf <= '0 ';- Nand_ce_buf <= '0 ';nand_we_buf <= '1 ';nand_ale_buf <= '0 ';nand_re_buf <= '1 ';nand_tri_buf <= '0 ';když read_20 =>nand_cle_buf <= '0 ';- Nand_ce_buf <= '0 ';nand_we_buf <= '1 ';nand_ale_buf <= '0 ';nand_re_buf <= '1 ';nand_tri_buf <= '0 ';když ostatní =>konec případu;

ukončení procesu;- Výstupní signály a port mapování- Nand_ce <= nand_ce_reg;

nand_cle <= nand_cle_reg;

nand_ale <= nand_ale_reg;

nand_we <= nand_we_reg;

nand_re <= nand_re_reg;data_mem <= data_in_reg kdy (nand_tri_reg = '1 ') else (ostatní =>' Z ');

data_out <= data_out_reg;konec oblouk;ukončení procesu;
 
Ahoj,

Vaše počítadlo signál dostává hodnotu pouze v několika málo kdy prohlášení.Musíte přiřadit hodnotu, když ji ve všech výkazech, nebo nastavit výchozí hodnotu, než v případě prohlášení, jako jste vy udělat pro připravený signál.

Devas

 

Welcome to EDABoard.com

Sponsor

Back
Top