nios2_uc.vhd 39 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465
  1. -- nios2_uc.vhd
  2. -- Generated using ACDS version 18.1 646
  3. library IEEE;
  4. use IEEE.std_logic_1164.all;
  5. use IEEE.numeric_std.all;
  6. entity nios2_uc is
  7. port (
  8. clk_clk : in std_logic := '0'; -- clk.clk
  9. pio_led_ext_conn_export : out std_logic_vector(31 downto 0); -- pio_led_ext_conn.export
  10. reset_reset_n : in std_logic := '0' -- reset.reset_n
  11. );
  12. end entity nios2_uc;
  13. architecture rtl of nios2_uc is
  14. component nios2_uc_jtag_uart is
  15. port (
  16. clk : in std_logic := 'X'; -- clk
  17. rst_n : in std_logic := 'X'; -- reset_n
  18. av_chipselect : in std_logic := 'X'; -- chipselect
  19. av_address : in std_logic := 'X'; -- address
  20. av_read_n : in std_logic := 'X'; -- read_n
  21. av_readdata : out std_logic_vector(31 downto 0); -- readdata
  22. av_write_n : in std_logic := 'X'; -- write_n
  23. av_writedata : in std_logic_vector(31 downto 0) := (others => 'X'); -- writedata
  24. av_waitrequest : out std_logic; -- waitrequest
  25. av_irq : out std_logic -- irq
  26. );
  27. end component nios2_uc_jtag_uart;
  28. component nios2_uc_nios2 is
  29. port (
  30. clk : in std_logic := 'X'; -- clk
  31. reset_n : in std_logic := 'X'; -- reset_n
  32. reset_req : in std_logic := 'X'; -- reset_req
  33. d_address : out std_logic_vector(19 downto 0); -- address
  34. d_byteenable : out std_logic_vector(3 downto 0); -- byteenable
  35. d_read : out std_logic; -- read
  36. d_readdata : in std_logic_vector(31 downto 0) := (others => 'X'); -- readdata
  37. d_waitrequest : in std_logic := 'X'; -- waitrequest
  38. d_write : out std_logic; -- write
  39. d_writedata : out std_logic_vector(31 downto 0); -- writedata
  40. debug_mem_slave_debugaccess_to_roms : out std_logic; -- debugaccess
  41. i_address : out std_logic_vector(19 downto 0); -- address
  42. i_read : out std_logic; -- read
  43. i_readdata : in std_logic_vector(31 downto 0) := (others => 'X'); -- readdata
  44. i_waitrequest : in std_logic := 'X'; -- waitrequest
  45. irq : in std_logic_vector(31 downto 0) := (others => 'X'); -- irq
  46. debug_reset_request : out std_logic; -- reset
  47. debug_mem_slave_address : in std_logic_vector(8 downto 0) := (others => 'X'); -- address
  48. debug_mem_slave_byteenable : in std_logic_vector(3 downto 0) := (others => 'X'); -- byteenable
  49. debug_mem_slave_debugaccess : in std_logic := 'X'; -- debugaccess
  50. debug_mem_slave_read : in std_logic := 'X'; -- read
  51. debug_mem_slave_readdata : out std_logic_vector(31 downto 0); -- readdata
  52. debug_mem_slave_waitrequest : out std_logic; -- waitrequest
  53. debug_mem_slave_write : in std_logic := 'X'; -- write
  54. debug_mem_slave_writedata : in std_logic_vector(31 downto 0) := (others => 'X'); -- writedata
  55. dummy_ci_port : out std_logic -- readra
  56. );
  57. end component nios2_uc_nios2;
  58. component nios2_uc_onchip_memory2 is
  59. port (
  60. clk : in std_logic := 'X'; -- clk
  61. address : in std_logic_vector(15 downto 0) := (others => 'X'); -- address
  62. clken : in std_logic := 'X'; -- clken
  63. chipselect : in std_logic := 'X'; -- chipselect
  64. write : in std_logic := 'X'; -- write
  65. readdata : out std_logic_vector(31 downto 0); -- readdata
  66. writedata : in std_logic_vector(31 downto 0) := (others => 'X'); -- writedata
  67. byteenable : in std_logic_vector(3 downto 0) := (others => 'X'); -- byteenable
  68. reset : in std_logic := 'X'; -- reset
  69. reset_req : in std_logic := 'X'; -- reset_req
  70. freeze : in std_logic := 'X' -- freeze
  71. );
  72. end component nios2_uc_onchip_memory2;
  73. component nios2_uc_pio_LED is
  74. port (
  75. clk : in std_logic := 'X'; -- clk
  76. reset_n : in std_logic := 'X'; -- reset_n
  77. address : in std_logic_vector(1 downto 0) := (others => 'X'); -- address
  78. write_n : in std_logic := 'X'; -- write_n
  79. writedata : in std_logic_vector(31 downto 0) := (others => 'X'); -- writedata
  80. chipselect : in std_logic := 'X'; -- chipselect
  81. readdata : out std_logic_vector(31 downto 0); -- readdata
  82. out_port : out std_logic_vector(31 downto 0) -- export
  83. );
  84. end component nios2_uc_pio_LED;
  85. component nios2_uc_mm_interconnect_0 is
  86. port (
  87. clk_50_clk_clk : in std_logic := 'X'; -- clk
  88. nios2_reset_reset_bridge_in_reset_reset : in std_logic := 'X'; -- reset
  89. nios2_data_master_address : in std_logic_vector(19 downto 0) := (others => 'X'); -- address
  90. nios2_data_master_waitrequest : out std_logic; -- waitrequest
  91. nios2_data_master_byteenable : in std_logic_vector(3 downto 0) := (others => 'X'); -- byteenable
  92. nios2_data_master_read : in std_logic := 'X'; -- read
  93. nios2_data_master_readdata : out std_logic_vector(31 downto 0); -- readdata
  94. nios2_data_master_write : in std_logic := 'X'; -- write
  95. nios2_data_master_writedata : in std_logic_vector(31 downto 0) := (others => 'X'); -- writedata
  96. nios2_data_master_debugaccess : in std_logic := 'X'; -- debugaccess
  97. nios2_instruction_master_address : in std_logic_vector(19 downto 0) := (others => 'X'); -- address
  98. nios2_instruction_master_waitrequest : out std_logic; -- waitrequest
  99. nios2_instruction_master_read : in std_logic := 'X'; -- read
  100. nios2_instruction_master_readdata : out std_logic_vector(31 downto 0); -- readdata
  101. jtag_uart_avalon_jtag_slave_address : out std_logic_vector(0 downto 0); -- address
  102. jtag_uart_avalon_jtag_slave_write : out std_logic; -- write
  103. jtag_uart_avalon_jtag_slave_read : out std_logic; -- read
  104. jtag_uart_avalon_jtag_slave_readdata : in std_logic_vector(31 downto 0) := (others => 'X'); -- readdata
  105. jtag_uart_avalon_jtag_slave_writedata : out std_logic_vector(31 downto 0); -- writedata
  106. jtag_uart_avalon_jtag_slave_waitrequest : in std_logic := 'X'; -- waitrequest
  107. jtag_uart_avalon_jtag_slave_chipselect : out std_logic; -- chipselect
  108. nios2_debug_mem_slave_address : out std_logic_vector(8 downto 0); -- address
  109. nios2_debug_mem_slave_write : out std_logic; -- write
  110. nios2_debug_mem_slave_read : out std_logic; -- read
  111. nios2_debug_mem_slave_readdata : in std_logic_vector(31 downto 0) := (others => 'X'); -- readdata
  112. nios2_debug_mem_slave_writedata : out std_logic_vector(31 downto 0); -- writedata
  113. nios2_debug_mem_slave_byteenable : out std_logic_vector(3 downto 0); -- byteenable
  114. nios2_debug_mem_slave_waitrequest : in std_logic := 'X'; -- waitrequest
  115. nios2_debug_mem_slave_debugaccess : out std_logic; -- debugaccess
  116. onchip_memory2_s1_address : out std_logic_vector(15 downto 0); -- address
  117. onchip_memory2_s1_write : out std_logic; -- write
  118. onchip_memory2_s1_readdata : in std_logic_vector(31 downto 0) := (others => 'X'); -- readdata
  119. onchip_memory2_s1_writedata : out std_logic_vector(31 downto 0); -- writedata
  120. onchip_memory2_s1_byteenable : out std_logic_vector(3 downto 0); -- byteenable
  121. onchip_memory2_s1_chipselect : out std_logic; -- chipselect
  122. onchip_memory2_s1_clken : out std_logic; -- clken
  123. pio_LED_s1_address : out std_logic_vector(1 downto 0); -- address
  124. pio_LED_s1_write : out std_logic; -- write
  125. pio_LED_s1_readdata : in std_logic_vector(31 downto 0) := (others => 'X'); -- readdata
  126. pio_LED_s1_writedata : out std_logic_vector(31 downto 0); -- writedata
  127. pio_LED_s1_chipselect : out std_logic -- chipselect
  128. );
  129. end component nios2_uc_mm_interconnect_0;
  130. component nios2_uc_irq_mapper is
  131. port (
  132. clk : in std_logic := 'X'; -- clk
  133. reset : in std_logic := 'X'; -- reset
  134. receiver0_irq : in std_logic := 'X'; -- irq
  135. sender_irq : out std_logic_vector(31 downto 0) -- irq
  136. );
  137. end component nios2_uc_irq_mapper;
  138. component altera_reset_controller is
  139. generic (
  140. NUM_RESET_INPUTS : integer := 6;
  141. OUTPUT_RESET_SYNC_EDGES : string := "deassert";
  142. SYNC_DEPTH : integer := 2;
  143. RESET_REQUEST_PRESENT : integer := 0;
  144. RESET_REQ_WAIT_TIME : integer := 1;
  145. MIN_RST_ASSERTION_TIME : integer := 3;
  146. RESET_REQ_EARLY_DSRT_TIME : integer := 1;
  147. USE_RESET_REQUEST_IN0 : integer := 0;
  148. USE_RESET_REQUEST_IN1 : integer := 0;
  149. USE_RESET_REQUEST_IN2 : integer := 0;
  150. USE_RESET_REQUEST_IN3 : integer := 0;
  151. USE_RESET_REQUEST_IN4 : integer := 0;
  152. USE_RESET_REQUEST_IN5 : integer := 0;
  153. USE_RESET_REQUEST_IN6 : integer := 0;
  154. USE_RESET_REQUEST_IN7 : integer := 0;
  155. USE_RESET_REQUEST_IN8 : integer := 0;
  156. USE_RESET_REQUEST_IN9 : integer := 0;
  157. USE_RESET_REQUEST_IN10 : integer := 0;
  158. USE_RESET_REQUEST_IN11 : integer := 0;
  159. USE_RESET_REQUEST_IN12 : integer := 0;
  160. USE_RESET_REQUEST_IN13 : integer := 0;
  161. USE_RESET_REQUEST_IN14 : integer := 0;
  162. USE_RESET_REQUEST_IN15 : integer := 0;
  163. ADAPT_RESET_REQUEST : integer := 0
  164. );
  165. port (
  166. reset_in0 : in std_logic := 'X'; -- reset
  167. reset_in1 : in std_logic := 'X'; -- reset
  168. clk : in std_logic := 'X'; -- clk
  169. reset_out : out std_logic; -- reset
  170. reset_req : out std_logic; -- reset_req
  171. reset_req_in0 : in std_logic := 'X'; -- reset_req
  172. reset_req_in1 : in std_logic := 'X'; -- reset_req
  173. reset_in2 : in std_logic := 'X'; -- reset
  174. reset_req_in2 : in std_logic := 'X'; -- reset_req
  175. reset_in3 : in std_logic := 'X'; -- reset
  176. reset_req_in3 : in std_logic := 'X'; -- reset_req
  177. reset_in4 : in std_logic := 'X'; -- reset
  178. reset_req_in4 : in std_logic := 'X'; -- reset_req
  179. reset_in5 : in std_logic := 'X'; -- reset
  180. reset_req_in5 : in std_logic := 'X'; -- reset_req
  181. reset_in6 : in std_logic := 'X'; -- reset
  182. reset_req_in6 : in std_logic := 'X'; -- reset_req
  183. reset_in7 : in std_logic := 'X'; -- reset
  184. reset_req_in7 : in std_logic := 'X'; -- reset_req
  185. reset_in8 : in std_logic := 'X'; -- reset
  186. reset_req_in8 : in std_logic := 'X'; -- reset_req
  187. reset_in9 : in std_logic := 'X'; -- reset
  188. reset_req_in9 : in std_logic := 'X'; -- reset_req
  189. reset_in10 : in std_logic := 'X'; -- reset
  190. reset_req_in10 : in std_logic := 'X'; -- reset_req
  191. reset_in11 : in std_logic := 'X'; -- reset
  192. reset_req_in11 : in std_logic := 'X'; -- reset_req
  193. reset_in12 : in std_logic := 'X'; -- reset
  194. reset_req_in12 : in std_logic := 'X'; -- reset_req
  195. reset_in13 : in std_logic := 'X'; -- reset
  196. reset_req_in13 : in std_logic := 'X'; -- reset_req
  197. reset_in14 : in std_logic := 'X'; -- reset
  198. reset_req_in14 : in std_logic := 'X'; -- reset_req
  199. reset_in15 : in std_logic := 'X'; -- reset
  200. reset_req_in15 : in std_logic := 'X' -- reset_req
  201. );
  202. end component altera_reset_controller;
  203. signal nios2_data_master_readdata : std_logic_vector(31 downto 0); -- mm_interconnect_0:nios2_data_master_readdata -> nios2:d_readdata
  204. signal nios2_data_master_waitrequest : std_logic; -- mm_interconnect_0:nios2_data_master_waitrequest -> nios2:d_waitrequest
  205. signal nios2_data_master_debugaccess : std_logic; -- nios2:debug_mem_slave_debugaccess_to_roms -> mm_interconnect_0:nios2_data_master_debugaccess
  206. signal nios2_data_master_address : std_logic_vector(19 downto 0); -- nios2:d_address -> mm_interconnect_0:nios2_data_master_address
  207. signal nios2_data_master_byteenable : std_logic_vector(3 downto 0); -- nios2:d_byteenable -> mm_interconnect_0:nios2_data_master_byteenable
  208. signal nios2_data_master_read : std_logic; -- nios2:d_read -> mm_interconnect_0:nios2_data_master_read
  209. signal nios2_data_master_write : std_logic; -- nios2:d_write -> mm_interconnect_0:nios2_data_master_write
  210. signal nios2_data_master_writedata : std_logic_vector(31 downto 0); -- nios2:d_writedata -> mm_interconnect_0:nios2_data_master_writedata
  211. signal nios2_instruction_master_readdata : std_logic_vector(31 downto 0); -- mm_interconnect_0:nios2_instruction_master_readdata -> nios2:i_readdata
  212. signal nios2_instruction_master_waitrequest : std_logic; -- mm_interconnect_0:nios2_instruction_master_waitrequest -> nios2:i_waitrequest
  213. signal nios2_instruction_master_address : std_logic_vector(19 downto 0); -- nios2:i_address -> mm_interconnect_0:nios2_instruction_master_address
  214. signal nios2_instruction_master_read : std_logic; -- nios2:i_read -> mm_interconnect_0:nios2_instruction_master_read
  215. signal mm_interconnect_0_jtag_uart_avalon_jtag_slave_chipselect : std_logic; -- mm_interconnect_0:jtag_uart_avalon_jtag_slave_chipselect -> jtag_uart:av_chipselect
  216. signal mm_interconnect_0_jtag_uart_avalon_jtag_slave_readdata : std_logic_vector(31 downto 0); -- jtag_uart:av_readdata -> mm_interconnect_0:jtag_uart_avalon_jtag_slave_readdata
  217. signal mm_interconnect_0_jtag_uart_avalon_jtag_slave_waitrequest : std_logic; -- jtag_uart:av_waitrequest -> mm_interconnect_0:jtag_uart_avalon_jtag_slave_waitrequest
  218. signal mm_interconnect_0_jtag_uart_avalon_jtag_slave_address : std_logic_vector(0 downto 0); -- mm_interconnect_0:jtag_uart_avalon_jtag_slave_address -> jtag_uart:av_address
  219. signal mm_interconnect_0_jtag_uart_avalon_jtag_slave_read : std_logic; -- mm_interconnect_0:jtag_uart_avalon_jtag_slave_read -> mm_interconnect_0_jtag_uart_avalon_jtag_slave_read:in
  220. signal mm_interconnect_0_jtag_uart_avalon_jtag_slave_write : std_logic; -- mm_interconnect_0:jtag_uart_avalon_jtag_slave_write -> mm_interconnect_0_jtag_uart_avalon_jtag_slave_write:in
  221. signal mm_interconnect_0_jtag_uart_avalon_jtag_slave_writedata : std_logic_vector(31 downto 0); -- mm_interconnect_0:jtag_uart_avalon_jtag_slave_writedata -> jtag_uart:av_writedata
  222. signal mm_interconnect_0_nios2_debug_mem_slave_readdata : std_logic_vector(31 downto 0); -- nios2:debug_mem_slave_readdata -> mm_interconnect_0:nios2_debug_mem_slave_readdata
  223. signal mm_interconnect_0_nios2_debug_mem_slave_waitrequest : std_logic; -- nios2:debug_mem_slave_waitrequest -> mm_interconnect_0:nios2_debug_mem_slave_waitrequest
  224. signal mm_interconnect_0_nios2_debug_mem_slave_debugaccess : std_logic; -- mm_interconnect_0:nios2_debug_mem_slave_debugaccess -> nios2:debug_mem_slave_debugaccess
  225. signal mm_interconnect_0_nios2_debug_mem_slave_address : std_logic_vector(8 downto 0); -- mm_interconnect_0:nios2_debug_mem_slave_address -> nios2:debug_mem_slave_address
  226. signal mm_interconnect_0_nios2_debug_mem_slave_read : std_logic; -- mm_interconnect_0:nios2_debug_mem_slave_read -> nios2:debug_mem_slave_read
  227. signal mm_interconnect_0_nios2_debug_mem_slave_byteenable : std_logic_vector(3 downto 0); -- mm_interconnect_0:nios2_debug_mem_slave_byteenable -> nios2:debug_mem_slave_byteenable
  228. signal mm_interconnect_0_nios2_debug_mem_slave_write : std_logic; -- mm_interconnect_0:nios2_debug_mem_slave_write -> nios2:debug_mem_slave_write
  229. signal mm_interconnect_0_nios2_debug_mem_slave_writedata : std_logic_vector(31 downto 0); -- mm_interconnect_0:nios2_debug_mem_slave_writedata -> nios2:debug_mem_slave_writedata
  230. signal mm_interconnect_0_onchip_memory2_s1_chipselect : std_logic; -- mm_interconnect_0:onchip_memory2_s1_chipselect -> onchip_memory2:chipselect
  231. signal mm_interconnect_0_onchip_memory2_s1_readdata : std_logic_vector(31 downto 0); -- onchip_memory2:readdata -> mm_interconnect_0:onchip_memory2_s1_readdata
  232. signal mm_interconnect_0_onchip_memory2_s1_address : std_logic_vector(15 downto 0); -- mm_interconnect_0:onchip_memory2_s1_address -> onchip_memory2:address
  233. signal mm_interconnect_0_onchip_memory2_s1_byteenable : std_logic_vector(3 downto 0); -- mm_interconnect_0:onchip_memory2_s1_byteenable -> onchip_memory2:byteenable
  234. signal mm_interconnect_0_onchip_memory2_s1_write : std_logic; -- mm_interconnect_0:onchip_memory2_s1_write -> onchip_memory2:write
  235. signal mm_interconnect_0_onchip_memory2_s1_writedata : std_logic_vector(31 downto 0); -- mm_interconnect_0:onchip_memory2_s1_writedata -> onchip_memory2:writedata
  236. signal mm_interconnect_0_onchip_memory2_s1_clken : std_logic; -- mm_interconnect_0:onchip_memory2_s1_clken -> onchip_memory2:clken
  237. signal mm_interconnect_0_pio_led_s1_chipselect : std_logic; -- mm_interconnect_0:pio_LED_s1_chipselect -> pio_LED:chipselect
  238. signal mm_interconnect_0_pio_led_s1_readdata : std_logic_vector(31 downto 0); -- pio_LED:readdata -> mm_interconnect_0:pio_LED_s1_readdata
  239. signal mm_interconnect_0_pio_led_s1_address : std_logic_vector(1 downto 0); -- mm_interconnect_0:pio_LED_s1_address -> pio_LED:address
  240. signal mm_interconnect_0_pio_led_s1_write : std_logic; -- mm_interconnect_0:pio_LED_s1_write -> mm_interconnect_0_pio_led_s1_write:in
  241. signal mm_interconnect_0_pio_led_s1_writedata : std_logic_vector(31 downto 0); -- mm_interconnect_0:pio_LED_s1_writedata -> pio_LED:writedata
  242. signal irq_mapper_receiver0_irq : std_logic; -- jtag_uart:av_irq -> irq_mapper:receiver0_irq
  243. signal nios2_irq_irq : std_logic_vector(31 downto 0); -- irq_mapper:sender_irq -> nios2:irq
  244. signal rst_controller_reset_out_reset : std_logic; -- rst_controller:reset_out -> [irq_mapper:reset, mm_interconnect_0:nios2_reset_reset_bridge_in_reset_reset, onchip_memory2:reset, rst_controller_reset_out_reset:in, rst_translator:in_reset]
  245. signal rst_controller_reset_out_reset_req : std_logic; -- rst_controller:reset_req -> [nios2:reset_req, onchip_memory2:reset_req, rst_translator:reset_req_in]
  246. signal nios2_debug_reset_request_reset : std_logic; -- nios2:debug_reset_request -> rst_controller:reset_in1
  247. signal reset_reset_n_ports_inv : std_logic; -- reset_reset_n:inv -> rst_controller:reset_in0
  248. signal mm_interconnect_0_jtag_uart_avalon_jtag_slave_read_ports_inv : std_logic; -- mm_interconnect_0_jtag_uart_avalon_jtag_slave_read:inv -> jtag_uart:av_read_n
  249. signal mm_interconnect_0_jtag_uart_avalon_jtag_slave_write_ports_inv : std_logic; -- mm_interconnect_0_jtag_uart_avalon_jtag_slave_write:inv -> jtag_uart:av_write_n
  250. signal mm_interconnect_0_pio_led_s1_write_ports_inv : std_logic; -- mm_interconnect_0_pio_led_s1_write:inv -> pio_LED:write_n
  251. signal rst_controller_reset_out_reset_ports_inv : std_logic; -- rst_controller_reset_out_reset:inv -> [jtag_uart:rst_n, nios2:reset_n, pio_LED:reset_n]
  252. begin
  253. jtag_uart : component nios2_uc_jtag_uart
  254. port map (
  255. clk => clk_clk, -- clk.clk
  256. rst_n => rst_controller_reset_out_reset_ports_inv, -- reset.reset_n
  257. av_chipselect => mm_interconnect_0_jtag_uart_avalon_jtag_slave_chipselect, -- avalon_jtag_slave.chipselect
  258. av_address => mm_interconnect_0_jtag_uart_avalon_jtag_slave_address(0), -- .address
  259. av_read_n => mm_interconnect_0_jtag_uart_avalon_jtag_slave_read_ports_inv, -- .read_n
  260. av_readdata => mm_interconnect_0_jtag_uart_avalon_jtag_slave_readdata, -- .readdata
  261. av_write_n => mm_interconnect_0_jtag_uart_avalon_jtag_slave_write_ports_inv, -- .write_n
  262. av_writedata => mm_interconnect_0_jtag_uart_avalon_jtag_slave_writedata, -- .writedata
  263. av_waitrequest => mm_interconnect_0_jtag_uart_avalon_jtag_slave_waitrequest, -- .waitrequest
  264. av_irq => irq_mapper_receiver0_irq -- irq.irq
  265. );
  266. nios2 : component nios2_uc_nios2
  267. port map (
  268. clk => clk_clk, -- clk.clk
  269. reset_n => rst_controller_reset_out_reset_ports_inv, -- reset.reset_n
  270. reset_req => rst_controller_reset_out_reset_req, -- .reset_req
  271. d_address => nios2_data_master_address, -- data_master.address
  272. d_byteenable => nios2_data_master_byteenable, -- .byteenable
  273. d_read => nios2_data_master_read, -- .read
  274. d_readdata => nios2_data_master_readdata, -- .readdata
  275. d_waitrequest => nios2_data_master_waitrequest, -- .waitrequest
  276. d_write => nios2_data_master_write, -- .write
  277. d_writedata => nios2_data_master_writedata, -- .writedata
  278. debug_mem_slave_debugaccess_to_roms => nios2_data_master_debugaccess, -- .debugaccess
  279. i_address => nios2_instruction_master_address, -- instruction_master.address
  280. i_read => nios2_instruction_master_read, -- .read
  281. i_readdata => nios2_instruction_master_readdata, -- .readdata
  282. i_waitrequest => nios2_instruction_master_waitrequest, -- .waitrequest
  283. irq => nios2_irq_irq, -- irq.irq
  284. debug_reset_request => nios2_debug_reset_request_reset, -- debug_reset_request.reset
  285. debug_mem_slave_address => mm_interconnect_0_nios2_debug_mem_slave_address, -- debug_mem_slave.address
  286. debug_mem_slave_byteenable => mm_interconnect_0_nios2_debug_mem_slave_byteenable, -- .byteenable
  287. debug_mem_slave_debugaccess => mm_interconnect_0_nios2_debug_mem_slave_debugaccess, -- .debugaccess
  288. debug_mem_slave_read => mm_interconnect_0_nios2_debug_mem_slave_read, -- .read
  289. debug_mem_slave_readdata => mm_interconnect_0_nios2_debug_mem_slave_readdata, -- .readdata
  290. debug_mem_slave_waitrequest => mm_interconnect_0_nios2_debug_mem_slave_waitrequest, -- .waitrequest
  291. debug_mem_slave_write => mm_interconnect_0_nios2_debug_mem_slave_write, -- .write
  292. debug_mem_slave_writedata => mm_interconnect_0_nios2_debug_mem_slave_writedata, -- .writedata
  293. dummy_ci_port => open -- custom_instruction_master.readra
  294. );
  295. onchip_memory2 : component nios2_uc_onchip_memory2
  296. port map (
  297. clk => clk_clk, -- clk1.clk
  298. address => mm_interconnect_0_onchip_memory2_s1_address, -- s1.address
  299. clken => mm_interconnect_0_onchip_memory2_s1_clken, -- .clken
  300. chipselect => mm_interconnect_0_onchip_memory2_s1_chipselect, -- .chipselect
  301. write => mm_interconnect_0_onchip_memory2_s1_write, -- .write
  302. readdata => mm_interconnect_0_onchip_memory2_s1_readdata, -- .readdata
  303. writedata => mm_interconnect_0_onchip_memory2_s1_writedata, -- .writedata
  304. byteenable => mm_interconnect_0_onchip_memory2_s1_byteenable, -- .byteenable
  305. reset => rst_controller_reset_out_reset, -- reset1.reset
  306. reset_req => rst_controller_reset_out_reset_req, -- .reset_req
  307. freeze => '0' -- (terminated)
  308. );
  309. pio_led : component nios2_uc_pio_LED
  310. port map (
  311. clk => clk_clk, -- clk.clk
  312. reset_n => rst_controller_reset_out_reset_ports_inv, -- reset.reset_n
  313. address => mm_interconnect_0_pio_led_s1_address, -- s1.address
  314. write_n => mm_interconnect_0_pio_led_s1_write_ports_inv, -- .write_n
  315. writedata => mm_interconnect_0_pio_led_s1_writedata, -- .writedata
  316. chipselect => mm_interconnect_0_pio_led_s1_chipselect, -- .chipselect
  317. readdata => mm_interconnect_0_pio_led_s1_readdata, -- .readdata
  318. out_port => pio_led_ext_conn_export -- external_connection.export
  319. );
  320. mm_interconnect_0 : component nios2_uc_mm_interconnect_0
  321. port map (
  322. clk_50_clk_clk => clk_clk, -- clk_50_clk.clk
  323. nios2_reset_reset_bridge_in_reset_reset => rst_controller_reset_out_reset, -- nios2_reset_reset_bridge_in_reset.reset
  324. nios2_data_master_address => nios2_data_master_address, -- nios2_data_master.address
  325. nios2_data_master_waitrequest => nios2_data_master_waitrequest, -- .waitrequest
  326. nios2_data_master_byteenable => nios2_data_master_byteenable, -- .byteenable
  327. nios2_data_master_read => nios2_data_master_read, -- .read
  328. nios2_data_master_readdata => nios2_data_master_readdata, -- .readdata
  329. nios2_data_master_write => nios2_data_master_write, -- .write
  330. nios2_data_master_writedata => nios2_data_master_writedata, -- .writedata
  331. nios2_data_master_debugaccess => nios2_data_master_debugaccess, -- .debugaccess
  332. nios2_instruction_master_address => nios2_instruction_master_address, -- nios2_instruction_master.address
  333. nios2_instruction_master_waitrequest => nios2_instruction_master_waitrequest, -- .waitrequest
  334. nios2_instruction_master_read => nios2_instruction_master_read, -- .read
  335. nios2_instruction_master_readdata => nios2_instruction_master_readdata, -- .readdata
  336. jtag_uart_avalon_jtag_slave_address => mm_interconnect_0_jtag_uart_avalon_jtag_slave_address, -- jtag_uart_avalon_jtag_slave.address
  337. jtag_uart_avalon_jtag_slave_write => mm_interconnect_0_jtag_uart_avalon_jtag_slave_write, -- .write
  338. jtag_uart_avalon_jtag_slave_read => mm_interconnect_0_jtag_uart_avalon_jtag_slave_read, -- .read
  339. jtag_uart_avalon_jtag_slave_readdata => mm_interconnect_0_jtag_uart_avalon_jtag_slave_readdata, -- .readdata
  340. jtag_uart_avalon_jtag_slave_writedata => mm_interconnect_0_jtag_uart_avalon_jtag_slave_writedata, -- .writedata
  341. jtag_uart_avalon_jtag_slave_waitrequest => mm_interconnect_0_jtag_uart_avalon_jtag_slave_waitrequest, -- .waitrequest
  342. jtag_uart_avalon_jtag_slave_chipselect => mm_interconnect_0_jtag_uart_avalon_jtag_slave_chipselect, -- .chipselect
  343. nios2_debug_mem_slave_address => mm_interconnect_0_nios2_debug_mem_slave_address, -- nios2_debug_mem_slave.address
  344. nios2_debug_mem_slave_write => mm_interconnect_0_nios2_debug_mem_slave_write, -- .write
  345. nios2_debug_mem_slave_read => mm_interconnect_0_nios2_debug_mem_slave_read, -- .read
  346. nios2_debug_mem_slave_readdata => mm_interconnect_0_nios2_debug_mem_slave_readdata, -- .readdata
  347. nios2_debug_mem_slave_writedata => mm_interconnect_0_nios2_debug_mem_slave_writedata, -- .writedata
  348. nios2_debug_mem_slave_byteenable => mm_interconnect_0_nios2_debug_mem_slave_byteenable, -- .byteenable
  349. nios2_debug_mem_slave_waitrequest => mm_interconnect_0_nios2_debug_mem_slave_waitrequest, -- .waitrequest
  350. nios2_debug_mem_slave_debugaccess => mm_interconnect_0_nios2_debug_mem_slave_debugaccess, -- .debugaccess
  351. onchip_memory2_s1_address => mm_interconnect_0_onchip_memory2_s1_address, -- onchip_memory2_s1.address
  352. onchip_memory2_s1_write => mm_interconnect_0_onchip_memory2_s1_write, -- .write
  353. onchip_memory2_s1_readdata => mm_interconnect_0_onchip_memory2_s1_readdata, -- .readdata
  354. onchip_memory2_s1_writedata => mm_interconnect_0_onchip_memory2_s1_writedata, -- .writedata
  355. onchip_memory2_s1_byteenable => mm_interconnect_0_onchip_memory2_s1_byteenable, -- .byteenable
  356. onchip_memory2_s1_chipselect => mm_interconnect_0_onchip_memory2_s1_chipselect, -- .chipselect
  357. onchip_memory2_s1_clken => mm_interconnect_0_onchip_memory2_s1_clken, -- .clken
  358. pio_LED_s1_address => mm_interconnect_0_pio_led_s1_address, -- pio_LED_s1.address
  359. pio_LED_s1_write => mm_interconnect_0_pio_led_s1_write, -- .write
  360. pio_LED_s1_readdata => mm_interconnect_0_pio_led_s1_readdata, -- .readdata
  361. pio_LED_s1_writedata => mm_interconnect_0_pio_led_s1_writedata, -- .writedata
  362. pio_LED_s1_chipselect => mm_interconnect_0_pio_led_s1_chipselect -- .chipselect
  363. );
  364. irq_mapper : component nios2_uc_irq_mapper
  365. port map (
  366. clk => clk_clk, -- clk.clk
  367. reset => rst_controller_reset_out_reset, -- clk_reset.reset
  368. receiver0_irq => irq_mapper_receiver0_irq, -- receiver0.irq
  369. sender_irq => nios2_irq_irq -- sender.irq
  370. );
  371. rst_controller : component altera_reset_controller
  372. generic map (
  373. NUM_RESET_INPUTS => 2,
  374. OUTPUT_RESET_SYNC_EDGES => "deassert",
  375. SYNC_DEPTH => 2,
  376. RESET_REQUEST_PRESENT => 1,
  377. RESET_REQ_WAIT_TIME => 1,
  378. MIN_RST_ASSERTION_TIME => 3,
  379. RESET_REQ_EARLY_DSRT_TIME => 1,
  380. USE_RESET_REQUEST_IN0 => 0,
  381. USE_RESET_REQUEST_IN1 => 0,
  382. USE_RESET_REQUEST_IN2 => 0,
  383. USE_RESET_REQUEST_IN3 => 0,
  384. USE_RESET_REQUEST_IN4 => 0,
  385. USE_RESET_REQUEST_IN5 => 0,
  386. USE_RESET_REQUEST_IN6 => 0,
  387. USE_RESET_REQUEST_IN7 => 0,
  388. USE_RESET_REQUEST_IN8 => 0,
  389. USE_RESET_REQUEST_IN9 => 0,
  390. USE_RESET_REQUEST_IN10 => 0,
  391. USE_RESET_REQUEST_IN11 => 0,
  392. USE_RESET_REQUEST_IN12 => 0,
  393. USE_RESET_REQUEST_IN13 => 0,
  394. USE_RESET_REQUEST_IN14 => 0,
  395. USE_RESET_REQUEST_IN15 => 0,
  396. ADAPT_RESET_REQUEST => 0
  397. )
  398. port map (
  399. reset_in0 => reset_reset_n_ports_inv, -- reset_in0.reset
  400. reset_in1 => nios2_debug_reset_request_reset, -- reset_in1.reset
  401. clk => clk_clk, -- clk.clk
  402. reset_out => rst_controller_reset_out_reset, -- reset_out.reset
  403. reset_req => rst_controller_reset_out_reset_req, -- .reset_req
  404. reset_req_in0 => '0', -- (terminated)
  405. reset_req_in1 => '0', -- (terminated)
  406. reset_in2 => '0', -- (terminated)
  407. reset_req_in2 => '0', -- (terminated)
  408. reset_in3 => '0', -- (terminated)
  409. reset_req_in3 => '0', -- (terminated)
  410. reset_in4 => '0', -- (terminated)
  411. reset_req_in4 => '0', -- (terminated)
  412. reset_in5 => '0', -- (terminated)
  413. reset_req_in5 => '0', -- (terminated)
  414. reset_in6 => '0', -- (terminated)
  415. reset_req_in6 => '0', -- (terminated)
  416. reset_in7 => '0', -- (terminated)
  417. reset_req_in7 => '0', -- (terminated)
  418. reset_in8 => '0', -- (terminated)
  419. reset_req_in8 => '0', -- (terminated)
  420. reset_in9 => '0', -- (terminated)
  421. reset_req_in9 => '0', -- (terminated)
  422. reset_in10 => '0', -- (terminated)
  423. reset_req_in10 => '0', -- (terminated)
  424. reset_in11 => '0', -- (terminated)
  425. reset_req_in11 => '0', -- (terminated)
  426. reset_in12 => '0', -- (terminated)
  427. reset_req_in12 => '0', -- (terminated)
  428. reset_in13 => '0', -- (terminated)
  429. reset_req_in13 => '0', -- (terminated)
  430. reset_in14 => '0', -- (terminated)
  431. reset_req_in14 => '0', -- (terminated)
  432. reset_in15 => '0', -- (terminated)
  433. reset_req_in15 => '0' -- (terminated)
  434. );
  435. reset_reset_n_ports_inv <= not reset_reset_n;
  436. mm_interconnect_0_jtag_uart_avalon_jtag_slave_read_ports_inv <= not mm_interconnect_0_jtag_uart_avalon_jtag_slave_read;
  437. mm_interconnect_0_jtag_uart_avalon_jtag_slave_write_ports_inv <= not mm_interconnect_0_jtag_uart_avalon_jtag_slave_write;
  438. mm_interconnect_0_pio_led_s1_write_ports_inv <= not mm_interconnect_0_pio_led_s1_write;
  439. rst_controller_reset_out_reset_ports_inv <= not rst_controller_reset_out_reset;
  440. end architecture rtl; -- of nios2_uc