Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

Mentor ADMS compiling error

Status
Not open for further replies.

kevin.memi

Newbie level 5
Joined
Jul 31, 2011
Messages
9
Helped
0
Reputation
0
Reaction score
0
Trophy points
1,281
Activity points
1,340
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:
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:

Where did you get the tutorials?Can you share it with me?Email it to me if possible: wwjlisa@163.com
Thank you in advance.
 

Status
Not open for further replies.

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top