kevin.memi
Newbie level 5
Hi all,
I am a newbie with Mentor ADMS. I am trying to compile a simple tutorial from Mentor ADMS, adc-12. But there is an error in compiling as below:
I did try with many other tutorials, but the error is the same.
I greatly appreciate who help me. Thank a lot.
PS. for your convenience, I attach the tutorial AMS file as well.
I am a newbie with Mentor ADMS. I am trying to compile a simple tutorial from Mentor ADMS, adc-12. But there is an error in compiling as below:
Code:
Compiling file comparator.vhd
Compiling Entity Declaration comparator
Code generation for work.comparator
Compiling Architecture level0 of comparator
Code generation for work.level0/comparator
Error: (vacom) While compiling file "comparator.vhd":
Code generation failed for unit "level0/comparator" in library "work"
ARCHITECTURE level0/comparator deleted
I did try with many other tutorials, but the error is the same.
I greatly appreciate who help me. Thank a lot.
PS. for your convenience, I attach the tutorial AMS file as well.
Code:
library IEEE;
use IEEE.std_logic_1164.all;
use IEEE.electrical_systems.all;
-- entity definition
entity comparator is
-- threshold voltage has been defined as a generic
generic (
vthreshold : REAL := 0.1);
-- Port interface for this entity is composed by a terminal and a value
port (
terminal p: Electrical;
value: out std_logic);
end comparator;
architecture Level0 of comparator is
-- Voltage definition as an across quantity
quantity v across p to electrical_ref;
function level(v, vthreshold: REAL) return std_logic is
begin
if v < vthreshold then
return '0';
else
return '1';
end if;
end function level;
begin
process
begin
-- level(v, vthreshold) checks for threshold crossing. . .
case level(v,vthreshold) is
-- Wait statements substitute process's sensivity list. . .
when '0' => value <='0';
wait on v'Above(vthreshold);
when '1' => value <='1';
wait on v'Above(vthreshold);
when others => value <= '0';
end case;
end process;
end Level0;
Last edited: