3D-Array-poort (natuurlijke verspreidingsgebied <>)

V

vollbr0t

Guest
Hallo, ik zou graag een module te maken (A) met een 3d-array-poort. Voor het maken van een array-poort heb ik een packge gebruiken om het type array te verklaren. Ik doe dit als volgt: TYPE test_type is array (natuurlijke verspreidingsgebied, waarbij natuurlijke verspreidingsgebied, waarbij natuurlijke verspreidingsgebied) van std_logic, ik moet "natuurlijke range" voor alle drie de dimensies te gebruiken, omdat het portwidth is afhankelijk van de generieke geneesmiddelen doorgegeven aan A: entiteit A is generiek (gen_1: natuurlijk: = 5, gen_2: natuurlijk: = 6, gen_3: natuurlijk: = 7); poort (matrix: IN test_type (gen_1 downto 0, gen_2 downto 0, gen_3 downto 0)); De simulatie werkt prima met deze , maar in de synthese ik krijg "Matrix nog niet ondersteund" op de 3D-Port-Line. Vanwege de vereiste "natuurlijke verspreidingsgebied" Ik kan geen gebruik maken subtype voor de verklaring in het pakket, en het passeren van de generieke geneesmiddelen tot het pakket niet te gebruiken natuurlijke verspreidingsgebied is niet mogelijk. Heb je enig idee om dit syenthesis? Met vriendelijke groet, Jan
 
Het enige antwoord is het gebruik van een andere synthesisor. multi-dimensionale arrays zijn niet erg vaak gebruikt en sommige synthesisors mogelijk niet ondersteund. Waarom synthesisor en welke versie gebruik je? Maar mijn vraag is waarom heeft u een 3D-matrix van std_logic? waarom havent je hebt een 2d matrix van std_logic_vector?
 
Ik denk niet dat het mogelijk om iets te verklaren als volgt: TYPE test_type is array (natuurlijke verspreidingsgebied, waarbij natuurlijke bereik) van std_logic_vector (natuurlijke verspreidingsgebied); * edit ik gebruik ISE 13,2
 
1. je moet de lengte van de std_logic_vector instellen wanneer je het verklaren, dus het zou moeten zijn: type test_type is array (natuurlijke verspreidingsgebied, waarbij natuurlijke bereik) van std_logic_vector (7 downto 0), tenzij u kunt een VHDL 2008 compatibel synthesisor te vinden, waar u kunt de std_logic_vector als natuurlijke verspreidingsgebied. Ik zou voorkomen dat te verklaren arrays van std_logic - het maakt het leven een beetje vervelend. 2. Ik dont use ISE, maar ik weet Quartus (Altera) zou waarschijnlijk te ondersteunen. Xilinx staat bekend als een beetje traag te halen met iedereen!
 
maar dit is het probleem: alle drie dimensies moeten worden generieke!
 
je kan hebben om een ​​soft-type te maken. bv: std_logic_vector (M * N * P-1 downto 0), en voer de indexering aan specifieke items te krijgen.
 

Welcome to EDABoard.com

Sponsor

Back
Top