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

📄 rrc.tdf

📁 《FPGA嵌入式应用系统开发典型实例》-书的光盘资料
💻 TDF
字号:
INCLUDE "LPM_ROM.INC";
INCLUDE "LPM_MUX.INC";
SUBDESIGN RRC
(
	CLK8X:					INPUT;				--样点速率
	IDS:					INPUT;				--I路输入数据
	QDS:					INPUT;				--Q路输入数据
	CLK1X:					OUTPUT;				--码元速率
	IOUT[9..0]:				OUTPUT;				--I路输出
	QOUT[9..0]:				OUTPUT;				--Q路输出
	IWRT:					OUTPUT;				--I路DAC写信号
	QWRT:					OUTPUT;				--Q路DAC写信号
	ICLK:					OUTPUT;				--I路DAC时钟
	QCLK:					OUTPUT;				--Q路DAC时钟
)
VARIABLE
	IBUFFER[7..0]:			DFF;
	QBUFFER[7..0]:			DFF;
	IADDROM[9..0]:			NODE;
	QADDROM[9..0]:			NODE;
	IMUXDATA[1..0][7..0]:	NODE;
	QMUXDATA[1..0][7..0]:	NODE;
	INODE[9..0]:			NODE;
	QNODE[9..0]:			NODE;
	COUNTER[2..0]:			DFF;
	RRCADD[2..0]:			NODE;				--低位地址
BEGIN
	COUNTER[].CLK = CLK8X;
	COUNTER[].D = COUNTER[].Q + 1;
	CLK1X = COUNTER[2].Q;
	RRCADD[2] = NOT COUNTER[2].Q;
	RRCADD[1] = NOT (COUNTER[2].Q XOR COUNTER[1].Q);
	RRCADD[0] = NOT (COUNTER[2].Q XOR COUNTER[0].Q);
	IBUFFER[].CLK = CLK1X;
	QBUFFER[].CLK = CLK1X;
	IBUFFER[0].D = IDS;
	QBUFFER[0].D = QDS;
	IBUFFER[7..1].D = IBUFFER[6..0].Q;			--移位寄存器
	QBUFFER[7..1].D = QBUFFER[6..0].Q;
	IMUXDATA[1][7..0] = IBUFFER[7..0].Q;
	IMUXDATA[0][7..0] = IBUFFER[0..7].Q;
	IADDROM[1..0] = RRCADD[1..0];
	IADDROM[9..2] = LPM_MUX(.SEL[] = RRCADD[2], .DATA[][] = IMUXDATA[][])
		WITH(LPM_WIDTH = 8, LPM_SIZE = 2, LPM_WIDTHS = 1)
		RETURNS(.RESULT[]);						
	QMUXDATA[1][7..0] = QBUFFER[7..0].Q;
	QMUXDATA[0][7..0] = QBUFFER[0..7].Q;
	QADDROM[1..0] = RRCADD[1..0];
	QADDROM[9..2] = LPM_MUX(.SEL[] = RRCADD[2], .DATA[][] = QMUXDATA[][])
		WITH(LPM_WIDTH = 8, LPM_SIZE = 2, LPM_WIDTHS = 1)
		RETURNS(.RESULT[]);						
	INODE[] = LPM_ROM(.INCLOCK = !CLK8X, .OUTCLOCK = !CLK8X, .ADDRESS[] = IADDROM[])						
		WITH(LPM_WIDTH = 10, LPM_WIDTHAD = 10, LPM_FILE = "DSSSRRC.MIF")
		RETURNS(.Q[]);							--I路ROM描述
	QNODE[] = LPM_ROM(.INCLOCK = !CLK8X, .OUTCLOCK = !CLK8X, .ADDRESS[] = QADDROM[])
		WITH(LPM_WIDTH = 10, LPM_WIDTHAD = 10, LPM_FILE = "DSSSRRC.MIF")
		RETURNS(.Q[]);							--Q路ROM描述
	ICLK = CLK8X;
	QCLK = CLK8X;
	IWRT = CLK8X;
	QWRT = CLK8X;
	IOUT[] = (!INODE[9],INODE[8..0]);
	QOUT[] = (!QNODE[9],QNODE[8..0]);
END;	

⌨️ 快捷键说明

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