第 12 章 电子系统设计实践

30
12 12 第第第 第第第第 EDA 第第第第第第

Upload: ganit

Post on 25-Jan-2016

104 views

Category:

Documents


4 download

DESCRIPTION

EDA 技术 实用教程. 第 12 章 电子系统设计实践. 12.1 等精度频率计设计. 在此完成的设计项目可达到的指标为:. (1) 频率测试功能: 测频范围 0.1Hz ~ 100MHz 。测频精度:测频全域相对误差恒为百万分之一。 (2) 脉宽测试功能: 测试范围 0.1μs ~ 1s ,测试精度 0.01μs 。 (3) 占空比测试功能: 测试精度 1 %~ 99 %。 (4) 相位测试功能 ( 附加功能 ) 。. 12.1.1 主系统组成. 图 12-1 频率计主系统电路组成. 12.1.2 测频原理. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: 第 12 章   电子系统设计实践

第第 1212 章 章 电子系统设计实践

EDA 技术实用教程

Page 2: 第 12 章   电子系统设计实践

康芯科技

12.1 等精度频率计设计

在此完成的设计项目可达到的指标为:

(1) 频率测试功能:测频范围 0.1Hz ~ 100MHz 。测频精度:测频全域相对误差恒为百万分之一。

(2) 脉宽测试功能:测试范围 0.1μs ~ 1s ,测试精度0.01μs 。

(3) 占空比测试功能:测试精度 1 %~ 99 %。

(4) 相位测试功能 ( 附加功能 ) 。

Page 3: 第 12 章   电子系统设计实践

康芯科技12.1.1 主系统组成

图 12-1 频率计主系统电路组成

Page 4: 第 12 章   电子系统设计实践

康芯科技

12.1.2 测频原理

图 12-2 等精度频率计主控结构

Page 5: 第 12 章   电子系统设计实践

康芯科技

设在一次预置门时间 Tpr中对被测信号计数值为 Nx ,对标准频率信号的计数值为 Ns,则下式成立:

NsFsNxFx // 12-1

不难得到测得的频率为:

NxNsFsFx )/( 12-2

图 12-3 频率计测控时序

12.1.2 测频原理

Page 6: 第 12 章   电子系统设计实践

康芯科技

占空比 = 12-3%10021

1

NN

N

12.1 等精度频率计设计

12.1.3 FPGA/CPLD 开发的 VHDL 设计

Page 7: 第 12 章   电子系统设计实践

康芯科技【例 12-1 】LIBRARY IEEE; -- 等精度频率计 FPGA 设计部分USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY etester IS PORT (BCLK : IN STD_LOGIC; -- 标准频率时钟信号 clock2 , 50MHZ TCLK : IN STD_LOGIC; -- 待测频率时钟信号 CLR : IN STD_LOGIC; -- 清零和初始化信号CL : IN STD_LOGIC; -- 当 SPUL 为高电平时, CL 为预置门控信号,用于测频计数-- 时间控制当 SPUL 为低电平时, CL 为测脉宽控制信号,--CL 高电平时测高电平脉宽而当 CL 为低电平时,测低电平脉宽。 SPUL : IN STD_LOGIC; -- 测频或测脉宽控制 START : OUT STD_LOGIC;-- 起始计数标志信号 EEND : OUT STD_LOGIC; -- 由低电平变到高电平时指示脉宽计数结束, SEL : IN STD_LOGIC_VECTOR(2 DOWNTO 0); -- 数据读出选同控制 DATA : OUT STD_LOGIC_VECTOR(7 DOWNTO 0)); --8 位数据读出END etester;ARCHITECTURE behav OF etester ISSIGNAL BZQ : STD_LOGIC_VECTOR(31 DOWNTO 0); -- 标准计数器SIGNAL TSQ : STD_LOGIC_VECTOR(31 DOWNTO 0); -- 测频计数器SIGNAL ENA : STD_LOGIC; -- 计数使能SIGNAL MA, CLK1, CLK2, CLK3 : STD_LOGIC;SIGNAL Q1, Q2, Q3 , BENA, PUL : STD_LOGIC;SIGNAL SS : STD_LOGIC_VECTOR(1 DOWNTO 0); 接下页

Page 8: 第 12 章   电子系统设计实践

康芯科技BEGINSTART <= ENA ;DATA <= BZQ(7 DOWNTO 0) WHEN SEL="000" ELSE -- 标准频率计数低 8 位输出 BZQ(15 DOWNTO 8) WHEN SEL="001" ELSE BZQ(23 DOWNTO 16) WHEN SEL="010" ELSE BZQ(31 DOWNTO 24) WHEN SEL="011" ELSE -- 标准频率计数最高 8 位输出 TSQ(7 DOWNTO 0) WHEN SEL="100" ELSE -- 待测频率计数值最低 8 位输出 TSQ(15 DOWNTO 8) WHEN SEL="101" ELSE TSQ(23 DOWNTO 16) WHEN SEL="110" ELSE TSQ(31 DOWNTO 24) WHEN SEL="111" ELSE -- 待测频率计数值最高 8 位输出 TSQ(31 DOWNTO 24) ;BZH : PROCESS(BCLK, CLR) -- 标准频率测试计数器,标准计数器 BEGIN IF CLR = '1' THEN BZQ <= ( OTHERS=>'0' ) ; ELSIF BCLK'EVENT AND BCLK = '1' THEN IF BENA = '1' THEN BZQ <= BZQ + 1; END IF; END IF; END PROCESS;TF : PROCESS(TCLK, CLR, ENA) -- 待测频率计数器,测频计数器 BEGIN IF CLR = '1' THEN TSQ <= ( OTHERS=>'0' ); ELSIF TCLK'EVENT AND TCLK = '1' THEN IF ENA = '1' THEN TSQ <= TSQ + 1; END IF; END IF; 接下页

Page 9: 第 12 章   电子系统设计实践

康芯科技END PROCESS;PROCESS(TCLK,CLR) BEGIN IF CLR = '1' THEN ENA <= '0' ; ELSIF TCLK'EVENT AND TCLK='1' THEN ENA <= CL ; END IF;END PROCESS; MA<=(TCLK AND CL) OR NOT(TCLK OR CL) ; -- 测脉宽逻辑 CLK1<=NOT MA ; CLK2<=MA AND Q1 ; CLK3<=NOT CLK2; SS<=Q2 & Q3 ; DD1: PROCESS(CLK1,CLR) BEGIN IF CLR = '1' THEN Q1 <= '0' ; ELSIF CLK1'EVENT AND CLK1 = '1' THEN Q1 <= '1' ; END IF; END PROCESS;DD2: PROCESS(CLK2,CLR) BEGIN IF CLR = '1' THEN Q2 <= '0' ; ELSIF CLK2'EVENT AND CLK2 = '1' THEN Q2 <= '1' ; END IF; END PROCESS;DD3: PROCESS(CLK3,CLR) BEGIN IF CLR = '1' THEN Q3 <= '0' ; ELSIF CLK3'EVENT AND CLK3 = '1' THEN Q3 <= '1' ; END IF; END PROCESS; 接下页

Page 10: 第 12 章   电子系统设计实践

康芯科技

PUL<='1' WHEN SS="10" ELSE -- 当 SS=“10” 时, PUL 高电平,允许标准计数器计数,

'0' ; -- 禁止计数EEND<='1' WHEN SS="11" ELSE --EEND 为低电平时,表示正在计数,由低电平变

到高电平 '0' ; -- 时,表示计数结束,可以从标准计数器中读数据了BENA<=ENA WHEN SPUL='1' ELSE-- 标准计数器时钟使能控制信号,当 SPUL 为 1

时,测频率 PUL WHEN SPUL='0' ELSE-- 当 SPUL 为 0 时,测脉宽和占空比 PUL ;END behav;

Page 11: 第 12 章   电子系统设计实践

康芯科技

C

D Q

C

D Q

C

D Q

C

D Q

£¨DATA£©

£¨START£©

SPUL

EEND=¡®0¡¯

ÔòEEND=¡®1¡¯£¬·ñÔò

µ±Q2=¡®1¡¯£¬Q3=¡®1¡¯

PUL=¡®0¡¯

ÔòPUL=¡®1¡¯£¬·ñÔò

µ±Q2=¡®1¡¯£¬Q3=¡®0¡¯

SS1µÄÂß¼ ¹¦ÄÜΪ£º

2Ñ¡1¶à·ѡÔñÆ÷

FPGA

¡®1¡¯

£¨SPUL£©

ENA

BENA¡®0¡¯

MUX21

¡®1¡¯

£¨EEND£©

PL

END

SS1

Q3

Q2

£¨SEL£©

£¨CLR£©

£¨TCLK£©

£¨CL£©

£¨BCLK£©

8DATA

SEL

3

32

3264-8¶à·ѡÔñÆ÷

TSQ

32λ´ý²âƵÂʼÆÊýÆ÷

ENA

TCLKTF

CLR

BENA

BCLKBZH

BZQ

32λ±ê׼ƵÂʼÆÊýÆ÷

CLR

图 12-4 例 12-1 的 RTL 图

Page 12: 第 12 章   电子系统设计实践

康芯科技

图 12-5 等精度频率计测频时序图

12.1.3 FPGA/CPLD 开发的 VHDL 设计

Page 13: 第 12 章   电子系统设计实践

康芯科技

图 12-6 等精度频率计测脉宽时序图

12.1.3 FPGA/CPLD 开发的 VHDL 设计

Page 14: 第 12 章   电子系统设计实践

康芯科技

12.1 等精度频率计设计 12.1.4 测试与设计步骤

12.1.5 相位测试 360

N2N1

N1

相位差 =

单片机系统

LED显示

键盘控制数字鉴相器

测频,测周期

FPGA

比较整形

比较整形A路信号

B路信号

计数值

图 12-7 测相仪模型

Page 15: 第 12 章   电子系统设计实践

康芯科技

12.1 等精度频率计设计 12.1.5 相位测试

图 12-8 测相仪电路原理图( TPAS.gdf 工程)

Page 16: 第 12 章   电子系统设计实践

康芯科技

12.1 等精度频率计设计 12.1.5 相位测试

图 12-9 相位检测原理图 epd )

图 12-10 鉴相器 EPD 的仿真波形

Page 17: 第 12 章   电子系统设计实践

康芯科技12.2 使用 IP Core 设计 FIR 滤波器

图 12-11 直接型 FIR 滤波器结构

1N

0n

nznhzH

N 阶 FIR 滤波器系统的传递函数:

x(n)

h(n)

h(1)

h(2)

h(3)

h(N-2)

h(N-1)

y(n)

1z 1z 1z 1z 1z

N 阶的 FIR 系统差分方程可表示为:

1N

0m)mn(x)m(h)n(Y

Page 18: 第 12 章   电子系统设计实践

康芯科技12.2 使用 IP Core 设计 FIR 滤波器

图 12-12 直接型 FIR 实现结构

Page 19: 第 12 章   电子系统设计实践

康芯科技12.2 使用 IP Core 设计 FIR 滤波器

图 12-13 FIR 滤波器设计示意

A/D FI R D/A模拟信号输入 滤波结果输出

Page 20: 第 12 章   电子系统设计实践

康芯科技12.2 使用 IP Core 设计 FIR 滤波器

图 12-14 FIR Compiler 安装图

Page 21: 第 12 章   电子系统设计实践

康芯科技12.2 使用 IP Core 设计 FIR 滤波器

12-15 设置 User Libraries

Page 22: 第 12 章   电子系统设计实践

康芯科技12.2 使用 IP Core 设计 FIR 滤波器

图 12-16 在 MegaWizard 管理器中选择 IP Core

Page 23: 第 12 章   电子系统设计实践

康芯科技12.2 使用 IP Core 设计 FIR 滤波器

图 12-17 FIR 滤波器系数确定

Page 24: 第 12 章   电子系统设计实践

康芯科技12.2 使用 IP Core 设计 FIR 滤波器

图 12-18 FIR 系数修正

Page 25: 第 12 章   电子系统设计实践

康芯科技12.2 使用 IP Core 设计 FIR 滤波器

图 12-19 FIR 模块 Symbol

Page 26: 第 12 章   电子系统设计实践

康芯科技12.2 使用 IP Core 设计 FIR 滤波器

图 12-20 firm 模块仿真结果

Page 27: 第 12 章   电子系统设计实践

康芯科技12.2 使用 IP Core 设计 FIR 滤波器

图 12-21 FIR 滤波器总体连接图

Page 28: 第 12 章   电子系统设计实践

康芯科技

习 题

12-1 根据第 12.1 节的叙述,回答以下问题: ( 1 )由图 12-4 说明信号“ SPUL” 和“ EEND” 的作用

( 2 )用数学证明, CL 门的时间在 0.1s 至 1s 间,在可测的频域内,误差小于等于标准频率源一个周期。

(3) 分析图 12-4 和图 12-5 ,说明信号 CL 和 START 的关系,并利用公式 (12-2) 计算 TCLK 的频率。

(4) 分析图 12-4 和图 12-6 ,说明信号 START 和 EEND 的关系,并计算 TCLK 的脉宽,详细说明占空比的测量方法。

(5) 分析图 12-2 、 12-3 ,详细说明等精度测频原理。

Page 29: 第 12 章   电子系统设计实践

康芯科技

实 验 与 设 计 12-1 多功能测试仪设计

(1) 实验目的:学习电子设计竞赛项目的开发技术。

(2) 实验原理:参考本章内容。

(3) 实验内容 1 :根据 12.1.4 节的步骤首先完成等精度频率计专用芯片( FPGA )的设计,按照图 12-5 和 12-6 的时序,在 GW48 系统上硬件验证例 12-1 的各项功能:等精度测频率、测脉宽、测占空比。与 GW48系统上给出的标准待测频率,计算误差,并与理论误差值比较。

(4) 实验内容 2 :根据图 12-1 、 12-5 、 12-6 和式 12-2 、 12-3 ,设计单片机程序,完成单片机与 FPGA 的接口程序、控制程序和计算显示程序的设计。完成等精度频率计独立系统的设计,控制键可以参考图 12-1 的电路,每一个键控制一种功能。

(5) 实验内容 3 :根据 12.1.5 节和图 12-8 ,修改原设计,增加测相位功能,并在系统上增加一个键,控制测相差和显示。被测信号可以用前面设计的移相信号发生器产生。

Page 30: 第 12 章   电子系统设计实践

康芯科技

实 验 与 设 计

12-2 FIR 滤波器设计

用 FPGA 设计 FIR 数字滤波器。由于滤波器的硬件实现需要 ADC和 DAC,要考虑使用 ADDA板。