2016-05-14 13 views
-1

arbeite ich an einer Schule Hausaufgaben und ich finde Schwierigkeiten in outputing ein Array mit Werten von 1.Ich diesen Code verwendet, aber der Simulator hält mit X das Signal bar FüllungArray Ausgang in Verilog

integer index = 0; 
initial 
begin 
for(index=0;index<=7;index = index+1) 
    begin 
    data_out[index]<=1; 
    end 
end 
endmodule 

data_out wird als output reg [7:0]data_out

erklärt Kann mir jemand etwas vorschlagen?

+0

Ich habe den Ausgang data_out auf diese Weise reg [7: 0] data_out_test verbunden und initialisiert es .data_out (data_out_test); –

+0

Sie müssen mehr Code anzeigen, um die Hilfe zu finden. Es gibt zu viele Orte, an denen es schief gehen könnte. Erstellen Sie ein [MCVE] (http://stackoverflow.com/help/mcve) und bearbeiten Sie Ihre Frage, um diese stattdessen aufzunehmen. Wenn Sie ein vollständiges Beispiel bereitstellen, das ich in einen Texteditor kopieren und ausführen kann, kann ich es testen. – skrrgwasme

+0

Ich schlage vor, Sie erstellen ein MCVE aus zwei Gründen: 1) Sie werden oft selbst Fehler dabei herausfinden, und 2) der Fehler könnte eine Diskrepanz zwischen den Deklarationen und den Zuordnungen, die Sie zeigen, wie die Module sind verbunden oder wie Sie drucken. Da Sie nur eines der drei zeigen, können wir Ihnen nicht helfen, es aufzuspüren. – skrrgwasme

Antwort

0

Es funktioniert jetzt, wie ich Draht verwendet habe [7: 0] data_out_test und immer blockieren. Vielen Dank für Ihre Antworten

Ok, und das nächste. Ich habe einen absteigenden Reihenfolge Zähler durch die posedge Uhr und eine andere Variable suma_de_1, deren Wert 12.Die Zähler Sterne 31-0 und ich habe folgendes, wenn die Bedingung

`integer index = 0; 
[email protected](posedge clock) begin 
for(index=0;index<=31;index = index+1) 
begin 
if(count > suma_de_1) 
data_out[index]<=2'b00; 
else data_out[index]<=1; 
end end` 

diese Prüfung das Ergebnis zu sehen heraus waveform

zu diesem Zeitpunkt count wird kleiner als suma_de_1, aber es erstellt ein anderes Array. Ich möchte, dass es das vorherige Array vervollständigt, das bis dahin voller 0 war. Hoffe ich bin klar genug. Ich möchte die Ausgabe in einem Array, nicht zwei

+0

Wenn Sie eine Folgefrage stellen, stellen Sie bitte eine neue Frage und fragen Sie sie dort. – wilcroft