URL
https://opencores.org/ocsvn/w11/w11/trunk
Subversion Repositories w11
[/] [w11/] [tags/] [w11a_V0.7/] [rtl/] [sys_gen/] [w11a/] [nexys4/] [sys_conf.vhd] - Rev 36
Go to most recent revision | Compare with Previous | Blame | View Log
-- $Id: sys_conf.vhd 683 2015-05-17 21:54:35Z mueller $ -- -- Copyright 2013-2015 by Walter F.J. Mueller <W.F.J.Mueller@gsi.de> -- -- This program is free software; you may redistribute and/or modify it under -- the terms of the GNU General Public License as published by the Free -- Software Foundation, either version 2, or at your option any later version. -- -- This program is distributed in the hope that it will be useful, but -- WITHOUT ANY WARRANTY, without even the implied warranty of MERCHANTABILITY -- or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -- for complete details. -- ------------------------------------------------------------------------------ -- Package Name: sys_conf -- Description: Definitions for sys_w11a_n4 (for synthesis) -- -- Dependencies: - -- Tool versions: ise 14.5-14.7; viv 2014.4; ghdl 0.29-0.31 -- Revision History: -- Date Rev Version Comment -- 2015-03-14 658 1.2 add sys_conf_ibd_* definitions -- 2015-02-07 643 1.1 drop bram and minisys options -- 2013-09-22 534 1.0 Initial version (derived from _n3 version) ------------------------------------------------------------------------------ library ieee; use ieee.std_logic_1164.all; use work.slvtypes.all; -- valid system clock / delay combinations (see n2_cram_memctl_as.vhd): -- div mul clksys read0 read1 write -- 2 1 50.0 2 2 3 -- 4 3 75.0 4 4 5 (also 70 MHz) -- 5 4 80.0 5 5 5 -- 20 17 85.0 5 5 6 -- 10 9 90.0 6 6 6 (also 95 MHz) -- 1 1 100.0 6 6 7 package sys_conf is -- configure clocks -------------------------------------------------------- constant sys_conf_clksys_vcodivide : positive := 1; constant sys_conf_clksys_vcomultiply : positive := 8; -- vco 800 MHz constant sys_conf_clksys_outdivide : positive := 10; -- sys 80 MHz constant sys_conf_clksys_gentype : string := "MMCM"; -- single clock design, clkser = clksys constant sys_conf_clkser_vcodivide : positive := sys_conf_clksys_vcodivide; constant sys_conf_clkser_vcomultiply : positive := sys_conf_clksys_vcomultiply; constant sys_conf_clkser_outdivide : positive := sys_conf_clksys_outdivide; constant sys_conf_clkser_gentype : string := sys_conf_clksys_gentype; -- configure rlink and hio interfaces -------------------------------------- constant sys_conf_ser2rri_defbaud : integer := 115200; -- default 115k baud constant sys_conf_hio_debounce : boolean := true; -- instantiate debouncers -- configure memory controller --------------------------------------------- constant sys_conf_memctl_read0delay : positive := 5; constant sys_conf_memctl_read1delay : positive := sys_conf_memctl_read0delay; constant sys_conf_memctl_writedelay : positive := 5; -- configure debug and monitoring units ------------------------------------ constant sys_conf_rbmon_awidth : integer := 9; -- use 0 to disable rbmon constant sys_conf_ibmon_awidth : integer := 9; -- use 0 to disable ibmon -- configure w11 cpu core -------------------------------------------------- constant sys_conf_mem_losize : integer := 8#167777#; -- 4 MByte constant sys_conf_cache_fmiss : slbit := '0'; -- cache enabled -- configure w11 system devices -------------------------------------------- -- configure character and communication devices constant sys_conf_ibd_dl11_1 : boolean := true; -- 2nd DL11 constant sys_conf_ibd_pc11 : boolean := true; -- PC11 constant sys_conf_ibd_lp11 : boolean := true; -- LP11 -- configure mass storage devices constant sys_conf_ibd_rk11 : boolean := true; -- RK11 constant sys_conf_ibd_rl11 : boolean := true; -- RL11 constant sys_conf_ibd_rhrp : boolean := true; -- RHRP constant sys_conf_ibd_tm11 : boolean := true; -- TM11 -- configure other devices constant sys_conf_ibd_iist : boolean := true; -- IIST -- derived constants ======================================================= constant sys_conf_clksys : integer := ((100000000/sys_conf_clksys_vcodivide)*sys_conf_clksys_vcomultiply) / sys_conf_clksys_outdivide; constant sys_conf_clksys_mhz : integer := sys_conf_clksys/1000000; constant sys_conf_clkser : integer := ((100000000/sys_conf_clkser_vcodivide)*sys_conf_clkser_vcomultiply) / sys_conf_clkser_outdivide; constant sys_conf_clkser_mhz : integer := sys_conf_clkser/1000000; constant sys_conf_ser2rri_cdinit : integer := (sys_conf_clkser/sys_conf_ser2rri_defbaud)-1; end package sys_conf;
Go to most recent revision | Compare with Previous | Blame | View Log