------------------------------------------------------------------------------
-- OpenMSP430 softcore MCU module
------------------------------------------------------------------------------
- signal mclk : std_logic;
- signal puc : std_logic;
+ signal mclk : std_logic;
+ signal puc : std_logic;
-- External data bus
signal dmem_addr : std_logic_vector (11 downto 0);
signal dmem_ce : std_logic;
signal dmem_we : std_logic;
signal dmem_din : std_logic_vector (15 downto 0);
signal dmem_dout : std_logic_vector (15 downto 0);
+ -- Peripheral bus
+ signal per_din : std_logic_vector (15 downto 0);
+ signal per_dout : std_logic_Vector (15 downto 0);
+ signal per_wen : std_logic_vector (1 downto 0);
+ signal per_wen16 : std_logic;
+ signal per_en : std_logic;
+ signal per_addr : std_logic_vector (7 downto 0);
------------------------------------------------------------------------------
-- Dual-port shared memory
reset_n => RESET,
rxd => RXD,
txd => TXD,
- per_addr => open,
- per_din => open,
- per_dout => (others => '0'),
- per_wen => open,
- per_en => open,
+ per_addr => per_addr,
+ per_din => per_din,
+ per_dout => per_dout,
+ per_wen => per_wen,
+ per_en => per_en,
nmi => '0',
irq => (others => '0'),
irq_acc => open,
DPA_SEL <= '1' when dmem_addr (11 downto 10) = "00" else '0';
DPA_STB <= dmem_ce and DPA_SEL;
+ -- Peripheral bus address decoder and data multiplexer.
+ ------------------------------------------------------------------------------
+ per_dout <= (others => '0'); -- MUST be 0 when nothing is addressed
+
+
------------------------------------------------------------------------------
-- Dual-port shared memory