-- FILE: test_accumulator.ads -- DATE: 7/98 -- AUTHOR: Sy Wong -- AIM: test program for generic accumulator with HDL, TEXT_IO, UTILITY, ACCUM; procedure test_accumulator is N : constant := 200000; --- this constant may be too large for some systems package ACC is new ACCUM (N); d: ACC.device; procedure display is begin ACC.update(d); UTILITY.put(d.add); UTILITY.put(d.carry_in); UTILITY.put (d.data_in(N-1)); TEXT_IO.put ("..."); UTILITY.put (d.data_in(0)); UTILITY.put (d.accumulator(N-1)); TEXT_IO.put ("..."); UTILITY.put (d.accumulator(0)); UTILITY.put(d.carry_out); TEXT_IO.NEW_LINE; end display; begin TEXT_IO.put_line ("add carry_in data_in accumulator carry_out"); d.carry_in:= FALSE; d.data_in:= (0..N-1 => TRUE); display; d.add:= TRUE; display; d.add:= FALSE; d.carry_in:= TRUE; d.data_in:= (0..N-1 => FALSE); display; d.add:= TRUE; display; end test_accumulator;