erreur de synthèse>

S

stay_in_chaos

Guest
Bonjour tout le monde,
quand j'étais synthèse d'un design avec tool.it Xilinx a montré une erreur si je me sers d'un tableau à deux dimensions, je pense que l'outil n'est pas en mesure de comprendre la façon dont le design est écrit que c'est pourquoi il est à l'ensemencement FATAL ERROR
dans ces lignes
Le rapport d'erreur est FATAL ERROR (il montre rien d'autre)
if (count1 == 2'b00) commencent
[Ajouter magasin] [63:0] <= lbi_liga_data;
end else if (count1 == 2'b01) commencent
[Ajouter magasin] [127:64] <= lbi_liga_data;
end else if (count1 == 2'b10) commencent
[Ajouter magasin] [191:128] <= lbi_liga_data;
end else if (count1 == 2'b11) commencent
[Ajouter magasin] [255:192] <= lbi_liga_data;
Ici, je suis le stockage des données dans la mémoire de la taille de ([255:0] magasin [1023:0]
ici que les données sont en rupture de sorte qu'il n'est pas possible d'utiliser reg au lieu de la mémoire.

Pouvez-vous suggérer une certaine logique afin que l'erreur est fixé lors de la synthèse.

Merci et salutations
stay_in_chaos
Dernière édition par stay_in_chaos le 10 février 2006 8:24, édité 1 fois au total

 
Quel est le message d'erreur?

S'il vous plaît montrent un module complet, pas seulement quelques lignes extraites du milieu.

Xilinx ISE (par le biais 8.1i version) ne supporte pas les dimensions des tableaux deux.

reg [255:0] magasin [1023:0] est un tableau à une dimension.

XST peut déduire Block RAM, mais seulement si vous écrivez la largeur des paroles pleines.Essayez en utilisant quatre tableaux 64-bit de large au lieu d'un peu large gamme-256.

 
Voir Fondamentalement, il n'est pas nécessaire pour le module entier
et le module est également trop grand donc je ne peux pas le coller ici

quand je suis comenting ces lignes
[Ajouter magasin] [63:0] <= lbi_liga_data;
[Ajouter magasin] [127:64] <= lbi_liga_data;
[Ajouter magasin] [191:128] <= lbi_liga_data;
[Ajouter magasin] [255:192] <= lbi_liga_data

le code est-il synthétisé does't montre aucune erreur
ou bien quand im décommentant les lignes qu'il a montré Erreur fatale

Donc, fondamentalement, l'erreur à cause de ces lignes n'est là que de toute autre manière

svp aider moi

 
Pourquoi n'utilisez-vous pas 4 mémoires de 64X1024 pour le magasin??
Pensez ensuite utiliser le matériel VHDL juste pour le décrire!

 
Écrire des octets / bits dans un tableau à 2 dimensions est à peine pris en charge par n'importe quel outil.Comme suggéré portes NAND aller de l'avant et de décrire 2.4 souvenirs, mais vous voulez, puis d'écrire dans le tableau.U vois qu'il n'y a pas de matériel qui peut vous permettre d'écrire en plusieurs parties d'un emplacement mémoire.Vous pouvez utiliser byte sélectionne pour la sélection des octets bien mais finalement il est mis en œuvre avec des mémoires multiples et byte sélectionne agit comme sélectionnez Mémoire.Espérons que vous trouverez mon point de vue

 
stay_in_chaos a écrit:

quand je suis comenting ces lignes

[Ajouter magasin] [63:0] <= lbi_liga_data;

[Ajouter magasin] [127:64] <= lbi_liga_data;

[Ajouter magasin] [191:128] <= lbi_liga_data;

[Ajouter magasin] [255:192] <= lbi_liga_datale code est-il synthétisé does't montre aucune erreur

 
echo47 a écrit:

Quel est le message d'erreur?S'il vous plaît montrent un module complet, pas seulement quelques lignes extraites du milieu.Xilinx ISE (par le biais 8.1i version) ne supporte pas les tableaux à deux dimensions.reg [255:0] magasin [1023:0] est un tableau unidimensionnel.XST peut déduire Block RAM, mais seulement si vous écrivez les mots pleine largeur.
Essayez en utilisant quatre tableaux 64-bit de large au lieu d'un large éventail de 256-bit.
 
entrée [02:00] [abc 255:0];

Je ne pense pas Verilog permet tableaux dans I / O déclarations.

 

Welcome to EDABoard.com

Sponsor

Back
Top