Altera MAx Plus - AHDL



Masz problem? Zapytaj na forum elektroda.pl

Poprzedni Następny
Wiadomość
Spis treści
From: "Jarek" <crystal_at_nospam_kki.net.pl>
Subject: Altera MAx Plus - AHDL
Date: Thu, 18 May 2000 13:47:06 +0200


Witam
Stawiam pierwsze kroki z Max Plusem Altery i AHDL.

Jak najprościej w języku AHDL zaimplementować następujący układ, czy
poprawne są zapisy przedsatione poniżej, czy oba dadzą taką samą układ
wewnętrzny?

Sygnały :
ad[3..1] - wejście
pod _ad[3..0] - bidi
eq - wyjście
oe - wejście

działanie:

dla oe=1 pod_ad[3..0]=add[3..0]
dla oe=0 pod_ad[3..0] jako wejście
eq=1 jeżeli ad[3..0]== pod_ad[3..0]


SUBDESIGN
(
ad[3..0] :INPUT;
pod_ad[3..0] :BIDIR;
oe :INPUT;
eq :OUTPUT;
)

BEGIN
pod_ad0=TRI(ad0,oe);
pod_ad1=TRI(ad1,oe);
pod_ad2=TRI(ad2,oe);
pod_ad3=TRI(ad3,oe);
eq=(ad[3..0]==pod_ad[3..0]);
END;

Jak inaczej zapisać 4 pierwsze any wykorzystać zapis nazwa [X..Y].


SUBDESIGN
(
ad[3..0] :INPUT;
pod_ad[3..0] :BIDIR;
oe :INPUT;
eq :OUTPUT;
)

VARIABLE
pod_ad_int3..0] : TRI;

BEGIN
pod_ad_int[3..0].oe=oe;
pod_ad_int[3..0]=ad[3..0];
pod_ad[3..0]=pod_ad_int[3..0];
eq=(ad[3..0]==pod_ad[3..0]);
END;

Z góry dziękuję za pomoc.
Jarek