Corrected behavioral view in order to be simulated with Asimut.
This commit is contained in:
parent
a025203d40
commit
8a4b6d3e9d
|
@ -1,20 +1,49 @@
|
|||
ENTITY ram_mem_data IS
|
||||
PORT (
|
||||
selxi : in BIT;
|
||||
bit0 : in BIT;
|
||||
nbit0 : in BIT;
|
||||
bit1 : in BIT;
|
||||
nbit1 : in BIT;
|
||||
vdd : in BIT;
|
||||
vss : in BIT
|
||||
entity RAM_MEM_DATA is
|
||||
|
||||
port
|
||||
(
|
||||
SELXI : in bit ;
|
||||
BIT0 : inout wor_bit bus;
|
||||
NBIT0 : inout wor_bit bus;
|
||||
BIT1 : inout wor_bit bus;
|
||||
NBIT1 : inout wor_bit bus;
|
||||
VDD : in bit ;
|
||||
VSS : in bit
|
||||
);
|
||||
END ram_mem_data;
|
||||
|
||||
ARCHITECTURE VBE OF ram_mem_data IS
|
||||
end RAM_MEM_DATA;
|
||||
|
||||
BEGIN
|
||||
ASSERT (vdd and not (vss))
|
||||
REPORT "power supply is missing on ram_mem_data"
|
||||
SEVERITY WARNING;
|
||||
architecture vbe of RAM_MEM_DATA is
|
||||
|
||||
signal LATCH0 : reg_bit register;
|
||||
signal LATCH1 : reg_bit register;
|
||||
|
||||
begin
|
||||
|
||||
assert (VDD ='1' and VSS = '0')
|
||||
report "power supply is missing on ram_mem_data"
|
||||
severity WARNING;
|
||||
|
||||
WRITE_0 : BLOCK ((SELXI and (BIT0 xor NBIT0)) = '1')
|
||||
begin
|
||||
LATCH0 <= guarded BIT0;
|
||||
end block;
|
||||
|
||||
WRITE_1 : BLOCK ((SELXI and (BIT1 xor NBIT1)) = '1')
|
||||
begin
|
||||
LATCH1 <= guarded BIT1;
|
||||
end block;
|
||||
|
||||
READ_0 : BLOCK ((SELXI and not SELXI'STABLE) = '1')
|
||||
begin
|
||||
BIT0 <= guarded LATCH0;
|
||||
NBIT0 <= guarded not LATCH0;
|
||||
end block;
|
||||
|
||||
READ_1 : BLOCK ((SELXI and not SELXI'STABLE) = '1')
|
||||
begin
|
||||
BIT1 <= guarded LATCH1;
|
||||
NBIT1 <= guarded not LATCH1;
|
||||
end block;
|
||||
|
||||
END;
|
||||
|
|
|
@ -1,27 +1,70 @@
|
|||
ENTITY ram_sense_data IS
|
||||
PORT (
|
||||
bit0 : in BIT;
|
||||
nbit0 : in BIT;
|
||||
bit1 : in BIT;
|
||||
nbit1 : in BIT;
|
||||
ad0x : in BIT;
|
||||
nad0x : in BIT;
|
||||
sensex : in BIT;
|
||||
nsensex : in BIT;
|
||||
prechx : in BIT;
|
||||
writex : in BIT;
|
||||
din : in BIT;
|
||||
dout : out BIT;
|
||||
vdd : in BIT;
|
||||
vss : in BIT
|
||||
entity RAM_SENSE_DATA is
|
||||
|
||||
port
|
||||
(
|
||||
bit0 : inout wor_bit bus;
|
||||
Nbit0 : inout wor_bit bus;
|
||||
bit1 : inout wor_bit bus;
|
||||
Nbit1 : inout wor_bit bus;
|
||||
AD0X : in bit ;
|
||||
NAD0X : in bit ;
|
||||
SENSEX : in bit ;
|
||||
NSENSEX : in bit ;
|
||||
PRECHX : in bit ;
|
||||
WRITEX : in bit ;
|
||||
DIN : in bit ;
|
||||
DOUT : out mux_bit bus;
|
||||
VDD : in bit ;
|
||||
VSS : in bit
|
||||
);
|
||||
END ram_sense_data;
|
||||
|
||||
ARCHITECTURE VBE OF ram_sense_data IS
|
||||
end RAM_SENSE_DATA;
|
||||
|
||||
BEGIN
|
||||
ASSERT (vdd and not (vss))
|
||||
REPORT "power supply is missing on ram_sense_data"
|
||||
SEVERITY WARNING;
|
||||
architecture vbe of RAM_SENSE_DATA is
|
||||
|
||||
END;
|
||||
begin
|
||||
|
||||
assert (VDD = '1' and VSS = '0')
|
||||
report "power supply is missing on ram_sense_data"
|
||||
severity WARNING;
|
||||
|
||||
assert ((AD0X xor NAD0X ) = '1')
|
||||
report "conflicting ad0x / nad0x in ram_sense_data"
|
||||
severity WARNING;
|
||||
|
||||
assert ((SENSEX xor NSENSEX) = '1')
|
||||
report "conflicting sensex / nsensex in ram_sense_data"
|
||||
severity WARNING;
|
||||
|
||||
WRITE_0 : block (NAD0X = '1' and WRITEX = '1')
|
||||
begin
|
||||
BIT0 <= guarded DIN;
|
||||
NBIT0 <= guarded not DIN;
|
||||
end block;
|
||||
|
||||
WRITE_1 : block (AD0X = '1' and WRITEX = '1')
|
||||
begin
|
||||
BIT1 <= guarded DIN;
|
||||
NBIT1 <= guarded not DIN;
|
||||
end block;
|
||||
|
||||
SENSE_0 : block (PRECHX = '0' and WRITEX = '0' and (BIT0 xor NBIT0) = '1')
|
||||
begin
|
||||
BIT0 <= guarded BIT0 ;
|
||||
NBIT0 <= guarded NBIT0;
|
||||
end block;
|
||||
|
||||
SENSE_1 : block (PRECHX = '0' and WRITEX = '0' and (BIT1 xor NBIT1) = '1')
|
||||
begin
|
||||
BIT1 <= guarded BIT1 ;
|
||||
NBIT1 <= guarded NBIT1;
|
||||
end block;
|
||||
|
||||
DATA_OUT : block (SENSEX = '1')
|
||||
begin
|
||||
with AD0X select
|
||||
DOUT <= guarded bit0 when '0',
|
||||
bit1 when '1';
|
||||
end block;
|
||||
|
||||
end;
|
||||
|
|
Loading…
Reference in New Issue