Line 1... |
Line 1... |
-------------------------------------------------------------------------------------------------100
|
-------------------------------------------------------------------------------------------------100
|
--| Modular Oscilloscope
|
--| Modular Oscilloscope
|
--| UNSL - Argentine
|
--| UNSL - Argentine
|
--|
|
--|
|
--| File: ctrl_address_allocation.vhd
|
--| File: ctrl_address_allocation.vhd
|
--| Version: 0.1
|
--| Version: 0.21
|
--| Tested in: Actel A3PE1500
|
--| Tested in: Actel A3PE1500
|
--| Board: RVI Prototype Board + LP Data Conversion Daughter Board
|
--| Board: RVI Prototype Board + LP Data Conversion Daughter Board
|
--|-------------------------------------------------------------------------------------------------
|
--|-------------------------------------------------------------------------------------------------
|
--| Description:
|
--| Description:
|
--| CONTROL - Address allocations
|
--| CONTROL - Address allocations
|
--|
|
--| Registers and intercomunications.
|
--|
|
--|
|
--|-------------------------------------------------------------------------------------------------
|
--|-------------------------------------------------------------------------------------------------
|
--| File history:
|
--| File history:
|
--| 0.1 | jul-2009 | First testing
|
--| 0.1 | jul-2009 | First testing
|
--| 0.2 | aug-2009 | New status flag
|
--| 0.2 | aug-2009 | New status flag
|
|
--| 0.21 | sep-2009 | Smarter stop signal
|
----------------------------------------------------------------------------------------------------
|
----------------------------------------------------------------------------------------------------
|
--| Copyright © 2009, Facundo Aguilera.
|
--| Copyright © 2009, Facundo Aguilera.
|
--|
|
--|
|
--| This VHDL design file is an open design; you can redistribute it and/or
|
--| This VHDL design file is an open design; you can redistribute it and/or
|
--| modify it and/or implement it after contacting the author.
|
--| modify it and/or implement it after contacting the author.
|
|
|
|
--| Wishbone Rev. B.3 compatible
|
----------------------------------------------------------------------------------------------------
|
----------------------------------------------------------------------------------------------------
|
|
|
|
|
|
|
--==================================================================================================
|
--==================================================================================================
|
-- TO DO
|
-- TO DO
|
-- · Finish ADC conf write
|
-- [OK] Finish ADC conf write
|
|
-- · Define error codes
|
--==================================================================================================
|
--==================================================================================================
|
|
|
|
|
--==================================================================================================
|
--==================================================================================================
|
-- Allocations
|
-- Allocations
|
Line 203... |
Line 208... |
STB_O_int <= STB_I_port and ADR_I_port(3);
|
STB_O_int <= STB_I_port and ADR_I_port(3);
|
CYC_O_int <= CYC_I_port and ADR_I_port(3);
|
CYC_O_int <= CYC_I_port and ADR_I_port(3);
|
|
|
--------------------------------------------------------------------------------------------------
|
--------------------------------------------------------------------------------------------------
|
-- Stop signal
|
-- Stop signal
|
stop_O <= CYC_I_port and STB_I_port and WE_I_port;
|
-- It asserts when there is a write in the confing registers
|
|
P_stop: process (CLK_I, STB_I_port, WE_I_port, status_I, ADR_I_port)
|
|
begin
|
|
if CLK_I'event and CLK_I = '1' then
|
|
if status_I(0) = '0' then
|
|
stop_O <= '0';
|
|
elsif CYC_I_port = '1' and STB_I_port = '1' and WE_I_port = '1' and ADR_I_port(3) = '0' then
|
|
stop_O <= '1';
|
|
end if;
|
|
end if;
|
|
end process;
|
|
|
--------------------------------------------------------------------------------------------------
|
--------------------------------------------------------------------------------------------------
|
-- DAT_I
|
-- DAT_I
|
data <= DAT_I_int(9 downto 0);
|
data <= DAT_I_int(9 downto 0);
|
data_channel <= DAT_I_int(10);
|
data_channel <= DAT_I_int(10);
|