📄 tb_user_corepwm.vhd
字号:
--/******************************************************************************
--
-- File Name: tb_user_corepwm.vhd
-- Version: 3.0
-- Date: May 25th, 2008
-- Description: Top level test module
--
-- Company: Actel
--
--
--
-- REVISION HISTORY:
-- COPYRIGHT 2008 BY ACTEL
-- THE INFORMATION CONTAINED IN THIS DOCUMENT IS SUBJECT TO LICENSING RESTRICTIONS
-- FROM ACTEL CORP. IF YOU ARE NOT IN POSSESSION OF WRITTEN AUTHORIZATION FROM
-- ACTEL FOR USE OF THIS FILE, THEN THE FILE SHOULD BE IMMEDIATELY DESTROYED AND
-- NO BACK-UP OF THE FILE SHOULD BE MADE.
--
--FUNCTIONAL DESCRIPTION:
--Refer to the CorePWM Handbook.
--******************************************************************************/
library ieee;
use ieee.std_logic_1164.all;
use ieee.numeric_std.all;
library corepwm_lib;
use corepwm_lib.corepwm_pkg.all;
ENTITY tb_user_corepwm IS
GENERIC (
FAMILY : INTEGER := 0; --range 0 to 21;
PWM_NUM : INTEGER := 16;
APB_DWIDTH : INTEGER := 8;
FIXED_PRESCALE_EN : INTEGER := 0;
FIXED_PRESCALE : INTEGER := 8;
FIXED_PERIOD_EN : INTEGER := 0;
FIXED_PERIOD : INTEGER := 8;
DAC_MODE1 : INTEGER := 1;
DAC_MODE2 : INTEGER := 0;
DAC_MODE3 : INTEGER := 0;
DAC_MODE4 : INTEGER := 0;
DAC_MODE5 : INTEGER := 0;
DAC_MODE6 : INTEGER := 0;
DAC_MODE7 : INTEGER := 0;
DAC_MODE8 : INTEGER := 0;
DAC_MODE9 : INTEGER := 0;
DAC_MODE10 : INTEGER := 0;
DAC_MODE11 : INTEGER := 0;
DAC_MODE12 : INTEGER := 0;
DAC_MODE13 : INTEGER := 0;
DAC_MODE14 : INTEGER := 0;
DAC_MODE15 : INTEGER := 0;
DAC_MODE16 : INTEGER := 0;
SHADOW_REG_EN1 : INTEGER := 1;
SHADOW_REG_EN2 : INTEGER := 1;
SHADOW_REG_EN3 : INTEGER := 1;
SHADOW_REG_EN4 : INTEGER := 1;
SHADOW_REG_EN5 : INTEGER := 1;
SHADOW_REG_EN6 : INTEGER := 1;
SHADOW_REG_EN7 : INTEGER := 1;
SHADOW_REG_EN8 : INTEGER := 1;
SHADOW_REG_EN9 : INTEGER := 1;
SHADOW_REG_EN10 : INTEGER := 1;
SHADOW_REG_EN11 : INTEGER := 1;
SHADOW_REG_EN12 : INTEGER := 1;
SHADOW_REG_EN13 : INTEGER := 1;
SHADOW_REG_EN14 : INTEGER := 1;
SHADOW_REG_EN15 : INTEGER := 1;
SHADOW_REG_EN16 : INTEGER := 1;
FIXED_PWM_POS_EN1 : INTEGER := 0;
FIXED_PWM_POS_EN2 : INTEGER := 0;
FIXED_PWM_POS_EN3 : INTEGER := 0;
FIXED_PWM_POS_EN4 : INTEGER := 0;
FIXED_PWM_POS_EN5 : INTEGER := 0;
FIXED_PWM_POS_EN6 : INTEGER := 0;
FIXED_PWM_POS_EN7 : INTEGER := 0;
FIXED_PWM_POS_EN8 : INTEGER := 0;
FIXED_PWM_POS_EN9 : INTEGER := 0;
FIXED_PWM_POS_EN10 : INTEGER := 0;
FIXED_PWM_POS_EN11 : INTEGER := 0;
FIXED_PWM_POS_EN12 : INTEGER := 0;
FIXED_PWM_POS_EN13 : INTEGER := 0;
FIXED_PWM_POS_EN14 : INTEGER := 0;
FIXED_PWM_POS_EN15 : INTEGER := 0;
FIXED_PWM_POS_EN16 : INTEGER := 0;
FIXED_PWM_POSEDGE1 : INTEGER := 0;
FIXED_PWM_POSEDGE2 : INTEGER := 0;
FIXED_PWM_POSEDGE3 : INTEGER := 0;
FIXED_PWM_POSEDGE4 : INTEGER := 0;
FIXED_PWM_POSEDGE5 : INTEGER := 0;
FIXED_PWM_POSEDGE6 : INTEGER := 0;
FIXED_PWM_POSEDGE7 : INTEGER := 0;
FIXED_PWM_POSEDGE8 : INTEGER := 0;
FIXED_PWM_POSEDGE9 : INTEGER := 0;
FIXED_PWM_POSEDGE10 : INTEGER := 0;
FIXED_PWM_POSEDGE11 : INTEGER := 0;
FIXED_PWM_POSEDGE12 : INTEGER := 0;
FIXED_PWM_POSEDGE13 : INTEGER := 0;
FIXED_PWM_POSEDGE14 : INTEGER := 0;
FIXED_PWM_POSEDGE15 : INTEGER := 0;
FIXED_PWM_POSEDGE16 : INTEGER := 0;
FIXED_PWM_NEG_EN1 : INTEGER := 0;
FIXED_PWM_NEG_EN2 : INTEGER := 0;
FIXED_PWM_NEG_EN3 : INTEGER := 0;
FIXED_PWM_NEG_EN4 : INTEGER := 0;
FIXED_PWM_NEG_EN5 : INTEGER := 0;
FIXED_PWM_NEG_EN6 : INTEGER := 0;
FIXED_PWM_NEG_EN7 : INTEGER := 0;
FIXED_PWM_NEG_EN8 : INTEGER := 0;
FIXED_PWM_NEG_EN9 : INTEGER := 0;
FIXED_PWM_NEG_EN10 : INTEGER := 0;
FIXED_PWM_NEG_EN11 : INTEGER := 0;
FIXED_PWM_NEG_EN12 : INTEGER := 0;
FIXED_PWM_NEG_EN13 : INTEGER := 0;
FIXED_PWM_NEG_EN14 : INTEGER := 0;
FIXED_PWM_NEG_EN15 : INTEGER := 0;
FIXED_PWM_NEG_EN16 : INTEGER := 0;
FIXED_PWM_NEGEDGE1 : INTEGER := 0;
FIXED_PWM_NEGEDGE2 : INTEGER := 0;
FIXED_PWM_NEGEDGE3 : INTEGER := 0;
FIXED_PWM_NEGEDGE4 : INTEGER := 0;
FIXED_PWM_NEGEDGE5 : INTEGER := 0;
FIXED_PWM_NEGEDGE6 : INTEGER := 0;
FIXED_PWM_NEGEDGE7 : INTEGER := 0;
FIXED_PWM_NEGEDGE8 : INTEGER := 0;
FIXED_PWM_NEGEDGE9 : INTEGER := 0;
FIXED_PWM_NEGEDGE10 : INTEGER := 0;
FIXED_PWM_NEGEDGE11 : INTEGER := 0;
FIXED_PWM_NEGEDGE12 : INTEGER := 0;
FIXED_PWM_NEGEDGE13 : INTEGER := 0;
FIXED_PWM_NEGEDGE14 : INTEGER := 0;
FIXED_PWM_NEGEDGE15 : INTEGER := 0;
FIXED_PWM_NEGEDGE16 : INTEGER := 0;
PRESCALE_ADR : INTEGER := 0;
PERIOD_ADR : INTEGER := 4;
ENABLE1_ADR : INTEGER := 8;
ENABLE2_ADR : INTEGER := 12;
PWM1_POSEDGE_ADR : INTEGER := 16;
PWM1_NEGEDGE_ADR : INTEGER := 20;
PWM2_POSEDGE_ADR : INTEGER := 24;
PWM2_NEGEDGE_ADR : INTEGER := 28;
PWM3_POSEDGE_ADR : INTEGER := 32;
PWM3_NEGEDGE_ADR : INTEGER := 36;
PWM4_POSEDGE_ADR : INTEGER := 40;
PWM4_NEGEDGE_ADR : INTEGER := 44;
PWM5_POSEDGE_ADR : INTEGER := 48;
PWM5_NEGEDGE_ADR : INTEGER := 52;
PWM6_POSEDGE_ADR : INTEGER := 56;
PWM6_NEGEDGE_ADR : INTEGER := 60;
PWM7_POSEDGE_ADR : INTEGER := 64;
PWM7_NEGEDGE_ADR : INTEGER := 68;
PWM8_POSEDGE_ADR : INTEGER := 72;
PWM8_NEGEDGE_ADR : INTEGER := 76;
PWM9_POSEDGE_ADR : INTEGER := 80;
PWM9_NEGEDGE_ADR : INTEGER := 84;
PWM10_POSEDGE_ADR : INTEGER := 88;
PWM10_NEGEDGE_ADR : INTEGER := 92;
PWM11_POSEDGE_ADR : INTEGER := 96;
PWM11_NEGEDGE_ADR : INTEGER := 100;
PWM12_POSEDGE_ADR : INTEGER := 104;
PWM12_NEGEDGE_ADR : INTEGER := 108;
PWM13_POSEDGE_ADR : INTEGER := 112;
PWM13_NEGEDGE_ADR : INTEGER := 116;
PWM14_POSEDGE_ADR : INTEGER := 120;
PWM14_NEGEDGE_ADR : INTEGER := 124;
PWM15_POSEDGE_ADR : INTEGER := 128;
PWM15_NEGEDGE_ADR : INTEGER := 132;
PWM16_POSEDGE_ADR : INTEGER := 136;
PWM16_NEGEDGE_ADR : INTEGER := 140;
SYS_CLK_CYCLE : INTEGER := 30
);
END tb_user_corepwm;
ARCHITECTURE translated OF tb_user_corepwm IS
component corepwm
GENERIC (
FAMILY : INTEGER := 0; --range 0 to 21;
PWM_NUM : INTEGER := 1;
APB_DWIDTH : INTEGER := 8;
FIXED_PRESCALE_EN : INTEGER := 1;
FIXED_PRESCALE : INTEGER := 8;
FIXED_PERIOD_EN : INTEGER := 0;
FIXED_PERIOD : INTEGER := 8;
DAC_MODE1 : INTEGER := 0;
DAC_MODE2 : INTEGER := 0;
DAC_MODE3 : INTEGER := 0;
DAC_MODE4 : INTEGER := 0;
DAC_MODE5 : INTEGER := 0;
DAC_MODE6 : INTEGER := 0;
DAC_MODE7 : INTEGER := 0;
DAC_MODE8 : INTEGER := 0;
DAC_MODE9 : INTEGER := 0;
DAC_MODE10 : INTEGER := 0;
DAC_MODE11 : INTEGER := 0;
DAC_MODE12 : INTEGER := 0;
DAC_MODE13 : INTEGER := 0;
DAC_MODE14 : INTEGER := 0;
DAC_MODE15 : INTEGER := 0;
DAC_MODE16 : INTEGER := 0;
SHADOW_REG_EN1 : INTEGER := 0;
SHADOW_REG_EN2 : INTEGER := 0;
SHADOW_REG_EN3 : INTEGER := 0;
SHADOW_REG_EN4 : INTEGER := 0;
SHADOW_REG_EN5 : INTEGER := 0;
SHADOW_REG_EN6 : INTEGER := 0;
SHADOW_REG_EN7 : INTEGER := 0;
SHADOW_REG_EN8 : INTEGER := 0;
SHADOW_REG_EN9 : INTEGER := 0;
SHADOW_REG_EN10 : INTEGER := 0;
SHADOW_REG_EN11 : INTEGER := 0;
SHADOW_REG_EN12 : INTEGER := 0;
SHADOW_REG_EN13 : INTEGER := 0;
SHADOW_REG_EN14 : INTEGER := 0;
SHADOW_REG_EN15 : INTEGER := 0;
SHADOW_REG_EN16 : INTEGER := 0;
FIXED_PWM_POS_EN1 : INTEGER := 0;
FIXED_PWM_POS_EN2 : INTEGER := 0;
FIXED_PWM_POS_EN3 : INTEGER := 0;
FIXED_PWM_POS_EN4 : INTEGER := 0;
FIXED_PWM_POS_EN5 : INTEGER := 0;
FIXED_PWM_POS_EN6 : INTEGER := 0;
FIXED_PWM_POS_EN7 : INTEGER := 0;
FIXED_PWM_POS_EN8 : INTEGER := 0;
FIXED_PWM_POS_EN9 : INTEGER := 0;
FIXED_PWM_POS_EN10 : INTEGER := 0;
FIXED_PWM_POS_EN11 : INTEGER := 0;
FIXED_PWM_POS_EN12 : INTEGER := 0;
FIXED_PWM_POS_EN13 : INTEGER := 0;
FIXED_PWM_POS_EN14 : INTEGER := 0;
FIXED_PWM_POS_EN15 : INTEGER := 0;
FIXED_PWM_POS_EN16 : INTEGER := 0;
FIXED_PWM_POSEDGE1 : INTEGER := 0;
FIXED_PWM_POSEDGE2 : INTEGER := 0;
FIXED_PWM_POSEDGE3 : INTEGER := 0;
FIXED_PWM_POSEDGE4 : INTEGER := 0;
FIXED_PWM_POSEDGE5 : INTEGER := 0;
FIXED_PWM_POSEDGE6 : INTEGER := 0;
FIXED_PWM_POSEDGE7 : INTEGER := 0;
FIXED_PWM_POSEDGE8 : INTEGER := 0;
FIXED_PWM_POSEDGE9 : INTEGER := 0;
FIXED_PWM_POSEDGE10 : INTEGER := 0;
FIXED_PWM_POSEDGE11 : INTEGER := 0;
FIXED_PWM_POSEDGE12 : INTEGER := 0;
FIXED_PWM_POSEDGE13 : INTEGER := 0;
FIXED_PWM_POSEDGE14 : INTEGER := 0;
FIXED_PWM_POSEDGE15 : INTEGER := 0;
FIXED_PWM_POSEDGE16 : INTEGER := 0;
FIXED_PWM_NEG_EN1 : INTEGER := 1;
FIXED_PWM_NEG_EN2 : INTEGER := 1;
FIXED_PWM_NEG_EN3 : INTEGER := 1;
FIXED_PWM_NEG_EN4 : INTEGER := 1;
FIXED_PWM_NEG_EN5 : INTEGER := 1;
FIXED_PWM_NEG_EN6 : INTEGER := 1;
FIXED_PWM_NEG_EN7 : INTEGER := 1;
FIXED_PWM_NEG_EN8 : INTEGER := 1;
FIXED_PWM_NEG_EN9 : INTEGER := 1;
FIXED_PWM_NEG_EN10 : INTEGER := 1;
FIXED_PWM_NEG_EN11 : INTEGER := 1;
FIXED_PWM_NEG_EN12 : INTEGER := 1;
FIXED_PWM_NEG_EN13 : INTEGER := 1;
FIXED_PWM_NEG_EN14 : INTEGER := 1;
FIXED_PWM_NEG_EN15 : INTEGER := 1;
FIXED_PWM_NEG_EN16 : INTEGER := 1;
FIXED_PWM_NEGEDGE1 : INTEGER := 0;
FIXED_PWM_NEGEDGE2 : INTEGER := 0;
FIXED_PWM_NEGEDGE3 : INTEGER := 0;
FIXED_PWM_NEGEDGE4 : INTEGER := 0;
FIXED_PWM_NEGEDGE5 : INTEGER := 0;
FIXED_PWM_NEGEDGE6 : INTEGER := 0;
FIXED_PWM_NEGEDGE7 : INTEGER := 0;
FIXED_PWM_NEGEDGE8 : INTEGER := 0;
FIXED_PWM_NEGEDGE9 : INTEGER := 0;
FIXED_PWM_NEGEDGE10 : INTEGER := 0;
FIXED_PWM_NEGEDGE11 : INTEGER := 0;
FIXED_PWM_NEGEDGE12 : INTEGER := 0;
FIXED_PWM_NEGEDGE13 : INTEGER := 0;
FIXED_PWM_NEGEDGE14 : INTEGER := 0;
FIXED_PWM_NEGEDGE15 : INTEGER := 0;
FIXED_PWM_NEGEDGE16 : INTEGER := 0
);
PORT (
PRESETN : IN STD_LOGIC;
PCLK : IN STD_LOGIC;
PSEL : IN STD_LOGIC;
PENABLE : IN STD_LOGIC;
PWRITE : IN STD_LOGIC;
PADDR : IN STD_LOGIC_VECTOR(7 DOWNTO 0);
PWDATA : IN STD_LOGIC_VECTOR(APB_DWIDTH - 1 DOWNTO 0);
PRDATA : OUT STD_LOGIC_VECTOR(APB_DWIDTH - 1 DOWNTO 0);
PWM : OUT STD_LOGIC_VECTOR(PWM_NUM DOWNTO 1)
);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -