【正文】
頂層文件 Company: Engineer: Create Date: 09:40:47 01/14/2020 Design Name: Module Name: digital_clock Behavioral Project Name: Target Devices: Tool versions: Description: Dependencies: Revision: Revision File Created Additional Comments: library IEEE。 use 。 use 。 use 。 Unment the following library declaration if using arithmetic functions with Signed or Unsigned values use 。 Unment the following library declaration if instantiating any Xilinx primitives in this code. library UNISIM。 use 。 ENTITY digital_clock IS PORT ( setup : IN STD_LOGIC。預(yù)置脈沖手動(dòng) set : IN STD_LOGIC。upd0 選擇工作模式 clk : IN STD_LOGIC。輸入 1Khz 脈沖 需要經(jīng)過(guò) 1000 分頻 產(chǎn)生 1hz 脈沖 tn : IN STD_LOGIC。相當(dāng)于題目要求中的 up 為高時(shí) 預(yù)置 +1 為低時(shí) 1 en : IN STD_LOGIC。使能 H_Year : OUT STD_LOGIC_VECTOR(3 DOWNTO 0)。 H_Year1 : OUT STD_LOGIC_VECTOR(3 DOWNTO 0)。 M_Mon : OUT STD_LOGIC_VECTOR(3 DOWNTO 0)。 M_Mon1 : OUT STD_LOGIC_VECTOR(3 DOWNTO 0)。 S_Day : OUT STD_LOGIC_VECTOR(3 DOWNTO 0)。 S_Day1 : OUT STD_LOGIC_VECTOR(3 DOWNTO 0) )。 END digital_clock。 ARCHITECTURE bdf_type OF digital_clock IS COMPONENT daymony1 PORT(clk0 : IN STD_LOGIC。 en : IN STD_LOGIC。 lock : IN STD_LOGIC_VECTOR(2 DOWNTO 0)。 da0 : OUT STD_LOGIC_VECTOR(3 DOWNTO 0)。 da1 : OUT STD_LOGIC_VECTOR(3 DOWNTO 0)。 mo0 : OUT STD_LOGIC_VECTOR(3 DOWNTO 0)。 mo1 : OUT STD_LOGIC_VECTOR(3 DOWNTO 0)。 ya0 : OUT STD_LOGIC_VECTOR(3 DOWNTO 0)。 ya1 : OUT STD_LOGIC_VECTOR(3 DOWNTO 0) )。 END COMPONENT。 COMPONENT fenpin PORT(upd0 : IN STD_LOGIC。外接頂層 set clk : IN STD_LOGIC。外接頂層 f10 f_clk : OUT STD_LOGIC。分頻輸出為 1hz lock : OUT STD_LOGIC_VECTOR(2 DOWNTO 0)計(jì)數(shù) set脈沖 000111循環(huán)產(chǎn)生工作模式 )。 END COMPONENT。 COMPONENT s_m_hour PORT(clk0 : IN STD_LOGIC。 en : IN STD_LOGIC。 lock : IN STD_LOGIC_VECTOR(2 DOWNTO 0)。 co : OUT STD_LOGIC。 h0 : OUT STD_LOGIC_VECTOR(3 DOWNTO 0)。 h1 : OUT STD_LOGIC_VECTOR(3 DOWNTO 0)。 m0 : OUT STD_LOGIC_VECTOR(3 DOWNTO 0)。 m1 : OUT STD_LOGIC_VECTOR(3 DOWNTO 0)。 s0 : OUT STD_LOGIC_VECTOR(3 DOWNTO 0)。 s1 : OUT STD_LOGIC_VECTOR(3 DOWNTO 0) )。 END COMPONENT。 COMPONENT yuzhis PORT(clk1 : IN STD_LOGIC。 tn : IN STD_LOGIC。 en : IN STD_LOGIC。 lock : IN STD_LOGIC_VECTOR(2 DOWNTO 0)。 da0 : OUT STD_LOGIC_VECTOR(3 DOWNTO 0)。 da1 : OUT STD_LOGIC_VECTOR(3 DOWNTO 0)。 mo0 : OUT STD_LOGIC_VECTOR(3 DOWNTO 0)。 mo1 : OUT STD_LOGIC_VECTOR(3 DOWNTO 0)。 ya0 : OUT STD_LOGIC_VECTOR(3 DOWNTO 0)。 ya1 : OUT STD_LOGIC_VECTOR(3 DOWNTO 0) )。 END COMPONENT。 COMPONENT s_m_yuz1 PORT(clk1 : IN STD_LOGIC。 tn : IN STD_LOGIC。 en : IN STD_LOGIC。 lock : IN STD_LOGIC_VECTOR(2 DOWNTO 0)。 h0 : OUT STD_LOGIC_VECTOR(3 DOWNTO 0)。 h1 : OUT STD_LOGIC_VECTOR(3 DOWNTO 0)。 m0 : OUT STD_LOGIC_VECTOR(3 DOWNTO 0)。 m1 : OUT STD_LOGIC_VECTOR(3 DOWNTO 0)。 s0 : OUT STD_LOGIC_VECTOR(3 DOWNTO 0)。 s1 : OUT STD_LOGIC_VECTOR(3 DOWNTO 0) )。 END COMPONENT。 COMPONENT xuanze1 port( en : in std_logic。 lock : in std_logic_vector(2 downto 0)。 工作模式選擇 a0 : in std_logic_vector(3 downto 0)。 a1 : in std_logic_vector(3 downto 0)。s b0 : in std_logic_vector(3 downto 0)。 b1 : in std_logic_vector(3 downto 0)。m c0 : in std_logic_vector(3 downto 0)。 c1 : in std_logic_vector(3 downto 0)。h d0 : in std_logic_vector(3 downto 0)。 d1 : in std_logic_vector(3 downto 0)。s e0 : in std_logic_vector(3 downto 0)。 e1 : in std_logic_vector(3 downto 0)。m f0 : in std_logic_vector(3 downto 0)。 f1 : in std_logic_vector(3 downto 0)。h s0,s1 : out std_logic_vector(3 downto 0)。 m0,m1 : out std_logic_vector(3 downto 0)。 h0,h1 : out std_logic_vector(3 downto 0) )。 END COMPONENT。 COMPONENT xuanze2 port( en : in std_logic。 lock : in std_logic_vector(2 downto 0)。 工作模式選擇 a0 : in std_logic_vector(3 downto 0)。 a1 : in std_logic_vector(3 downto 0)。日 b0 : in std_logic_vector(3 downto 0)。 b1 : in std_logic_vector(3 downto 0)。月 c0 : in std_logic_vector(3 downto 0)。 c1 : in std_logic_vector(3 downto 0)。年 d0 : in std_logic_vector(3 downto 0)。 d1 : in std_logic_vector(3 downto 0)。日 e0 : in std_logic_vector(3 downto 0)。 e1 : in std_logic_vector(3 downto 0)。月 f0 : in std_logic_vector(3 downto 0)。 f1 : in std_logic_vector(3 downto 0)。年 da0,da1 : out std_logic_vector(3 downto 0)。 mo0,mo1 : out std_logic_vector(3 downto 0)。 ya0,ya1 : out std_logic_vector(3 downto 0) )。 END COMPONENT。 COMPONENT time_show PORT ( en : IN STD_LOGIC。 lock : IN STD_LOGIC_VECTOR(2 DOWNTO 0)。顯示切換義馬管具體顯示就不寫了只解決顯示切換模塊 S_s0 : IN STD_LOGIC_VECTOR(3 DOWNTO 0)。 S_s1 : IN STD_LOGIC_VECTOR(3 DOWNTO 0)。