--============================================================================-- -- Design units : TestGenerator(Functional) (Architecture) -- -- File name : testgenerator_functional.vhd -- -- Purpose : -- -- Note : -- -- Limitations : -- -- Errors : None known -- -- Library : BitMod_TB_Lib -- -- Dependencies : IEEE.Std_Logic_1164, -- ESA.Simulation, -- BitMod_TB_Lib.MISR_Definition, -- BitMod_TB_Lib.TestDefinition. -- -- Author : Sandi Habinc -- ESTEC Microelectronics and Technology Section (WSM) -- P. O. Box 299 -- 2200 AG Noordwijk -- The Netherlands -- -- Copyright : European Space Agency (ESA) 1995. No part may be reproduced -- in any form without the prior written permission of ESA. -- -- Simulator : Synopsys v. 3.2b, on Sun SPARCstation 10, SunOS 4.1.3 -------------------------------------------------------------------------------- -- Revision list -- Version Author Date Changes -- -- 0.1 SH 1 July 95 New model -------------------------------------------------------------------------------- -------------------------------------------------------------------------------- -- Naming convention: Active low signals are indicated by _N. -- All external signals have been named as in the data sheet. -------------------------------------------------------------------------------- --=============================== Architecture ===============================-- library BitMod_TB_Lib; use BitMod_TB_Lib.TestDefinition.all; use BitMod_TB_Lib.MISR_Definition.all; architecture Functional of TestGenerator is signal MISRegister: Std_Logic_Vector(0 to 15); signal MISRInput: Std_Logic_Vector(0 to 15); signal MISRReset: Boolean; constant Sense: Time := 45 ns; begin --========================== Architecture ==============================-- -- This test suite will test the full functionality of the model, except -- the the mode when BIST is activated. The activation of the BIST would -- preclude the test suite to be evaluated using fault simulation. The -- BIST is tested in the architecture X_Handling. -- -- Only the following three Std_Logic values are applied to the inputs, -- to be able to execute the test for the Gate-level model as well: -- '0', '1', 'Z'. -- -- The ouputs are sampled and compressed using a MISR, which is compared to -- an expected signature at the end of each sub-test. ----------------------------------------------------------------------------- TestSuite: process variable TestFailed: Boolean := False; begin ResetMISR(MISRReset); -- Not implemented in this VHDL code example CheckMISR(MISRegister, "1234", TestFailed, InstancePath&"Functional:TestSuite:"); assert not TestFailed report InstancePath&"Functional:TestSuite: Test failed." severity Error; assert TestFailed report InstancePath&"Functional:TestSuite: Test passed." severity Note; assert False report InstancePath&"Functional:TestSuite: End of test." severity Failure; wait; end process TestSuite; ----------------------------------------------------------------------------- -- MISR ----------------------------------------------------------------------------- MISRInput <= MData & SData & SClk & D & A & CS_N & RW_N & Reset_N; MISR(Clk => Clk, Reset => MISRReset, Input => MISRInput, MISR => MISRegister, Rising => True, Falling => False, HeaderMsg => InstancePath&"Functional:MISR:", Sense => Sense); end Functional; --================ End of architecture =======================--