⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 4.txt

📁 VHDL 波形发生器VHDL程序与仿真
💻 TXT
字号:
多功能波形发生器VHDL程序与仿真


实现4种常见波形正弦、三角、锯齿、方波(A、B)的频率、幅度可控输出(方波
--A的占空比也是可控的),可以存储任意波形特征数据并能重现该波形,还可完成
--各种波形的线形叠加输出。
--说明: SSS(前三位)和SW信号控制4种常见波形种哪种波形输出。4种波形的频率、
--幅度(基准幅度A)的调节均是通过up、down、set按键和4个BCD码置入器以及一
--个置入档位控制信号(ss)完成的(AMP的调节范围是0~5V,调节量阶为1/51V)。
--其中方波的幅度还可通过u0、d0调节输出数据的归一化幅值(AMP0)进行进一步
--细调(调节量阶为1/(51*255)V)。方波A的占空比通过zu、zp按键调节(调节
--量阶1/64*T)。系统采用内部存储器——RAM实现任意输入波形的存储,程序只支
--持键盘式波形特征参数置入存储,posting 为进入任意波置入(set)、清除(clr)状态
--控制信号,SSS控制存储波形的输出。P180为预留端口,
                             

















/*CNT10*/
module	CNT10	(RESET_B,CLK,DIV_CLK);
input	RESET_B,CLK;
output	DIV_CLK;
reg	[3:0] Q;

always	@(posedge CLK )
	if(!RESET_B)
		Q<=0;
	else if(Q==9)
		Q<=0;
	else
		Q<=Q+1;
assign DIV_CLK=~Q[3];
endmodule


/*R_SYDFF*/
module	R_SYDFF	(RB,D,CLK,Q);
input	RB,CLK;
input	[14:0]D;
output	[14:0]Q;
reg[14:0]Q;
 always	@(posedge CLK)
	begin
	if(!RB)
	 Q<=0;
	else
    Q<=D;
   end
endmodule

/*F_ADDER*/
module	F_ADDER(A,B,CY_IN,SUM,CY_OUT);
input	A,B,CY_IN;
output	SUM,CY_OUT;
	
	assign SUM=A^B^CY_IN;
	assign CY_OUT=(A&B)|(A&CY_IN)|(B&CY_IN);
endmodule

/*ADDER*/
module	ADDER(A,B,CY_IN,SUM);
input	A,B,CY_IN;
output	SUM;

 assign	SUM=A^B^CY_IN;
endmodule

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -