interessant tvil

S

srisrisri

Guest
Hei alle sammen

Jeg møter et problem med typen rekke matrise.under
Jeg har gitt en forenklet versjon av problemet

- Pakken my_pak
type my_typ1 er array (0 til 1) av std_logic;
type my_typ2 er array (0 til 1) av my_typ1;

- juridisk erklæring
bruk work.my_pak.all;

enhet ....
port (
out_put: ut my_typ2;
....);
end enhet;

problemet her er, etter syntese, den genererte
netlist har port på denne måten.

out_put: std_logic_vector (3 downto 0);

Kan noen klare meg som til der måte porten
biter er rearranged.og en annen ting er en
syntese verktøy har porten som (3 downto 0) og
andre har det så (0 til 3).kan vi noen hvordan over ride
slik at vi kan ha port på samme måte som for
opprinnelige koden slik at den samme testen benken kan brukes
uten endringer.

med varm hilsen
Srisrisri

 
Dette er et opplagt eksempel hvorfor VHDL virkelig stinker.

For netlist, må du behandle det som ekte maskinvare.For en ekte hardware, det kan ikke være noen av denne typen fancy data struktur.Jeg tror det, og alle verktøyene tror det ... Derfor får du ikke noe annet enn en matrise.(i verilog netlist, får (3:0))

Det
er alltid et stort problem med VHDL når du gjør gatelevel simulering, spesielt når du koden din input / output-port på en slik måte.Ingen verktøy kan opprettholde samme struktur når det gjelder å netlist.

Nå kan du forestille deg hvis du forsøker å gjøre RTL til gate formelle bekreftelsen, hvor smertefullt det er når du har denne typen ting.Selv portnavnet kjører du gal,
enn si alle de interne registre som du bruker bus.req, bus.data, .... bluh bluh bluh ...

Fortsatt vet ikke hvorfor folk fortsatt holde oss til VHDL.

Beklager .... kunne ikke hjelpe .....
 
hi stevepre

Etter at du har prøvd for Synplicity og FPGA Express, ga jeg et forsøk på sammendrag DA.Interessant nok fant jeg ut at ved å sette en av de nedenfor variabel (Jeg vet ikke nøyaktig hvilken) vi kan få porten på den måten det var i den opprinnelige koden.

vhdlout_preserve_hierarchical_types = "Bruker";
vhdlout_single_bit = "Bruker";

Så jeg tror det er ikke problemet med VHDL men med verktøyet vi bruker.ved å sette noen alternativ i Synplicity og FPGA uttrykke Jeg håper vi kan få det ønskede resultatet.

Jeg vil være veldig greatfull hvis noen eksperter som har brukt disse verktøyene fortelle meg hvilke alternativer for å angi

hilsen
srisrisri

 

Welcome to EDABoard.com

Sponsor

Back
Top