您的位置 首页 发布

MPEG-2编码复用器中的FPGA逻辑设计

MPEG-2编码复用器主要由DSP(数字信号处理器)和FPGA两大部分组成。其中,DSP作为整个系统的主控单元,而FPGA则完成相应的辅助逻辑功能。用FPGA实现的编码复用器,具有设计,升级都非常方便

计划总述:

  MPEG-2编码复用器首要由DSP(数字信号处理器)和FPGA两大部分组成。其间,DSP作为整个体系的主控单元,而FPGA则完结相应的辅佐逻辑功用。用FPGA完结的编码复用器,具有规划,晋级都十分便利,快速的特色,提高了作业效率。

FPGA芯片简介

  编码复用器中所运用的FPGA芯片是美国Altera公司出产的FLEX10K50V。 Flex10K系列是Altera公司在FLEX8000系列基础上发展起来的一种新式器材。它的结构的首要特色除了首要的逻辑阵列块(LAB)之外,初次选用了嵌入阵列块(EAB)。 FLEX10K50V的首要特性目标为:

  ●逻辑门数目为50,000门;

  ●最大I/O引脚数为274个;

  ●供给-1,-2,-3,-4四种速度等级;

  ●触发器数目为3,184个;

  ●LE(Logic Element,逻辑单元)数目为2,880个;

  ●总的RAM为20,480bits。

MAX+ PLUS II开发东西

  MAX+ PLUS II是开发Altera公司FPGA产品(包含MAX系列和FLEX系列)的软件东西包。运用MAX+ PLUS II供给的规划环境和规划东西,能够灵敏高效地完结各种数字电路规划。在MAX+ PLUS II的规划环境下, FPGA的整个规划流程如图1所示:

  1. MAX+ PLUS II的规划输入能够有三种办法,即图形输入,文本输入和波形输入。此外,符号修正器用于修正用户自己的模块符号。需求阐明的是: 在本体系中,咱们运用AHDL(Altera,HDL) 言语作为文本输入办法。

  2. 规划完结即在FPGA器材内物理地完结所需地逻辑.这个进程由MAX+ PLUS II中的中心部分编译器完结。它依据规划输入文件主动生成用于器材编程、波形仿真、延时剖析等所需的数据文件。

  3. 规划仿真是由仿真器和时延剖析器运用编译器发生的数据文件,主动完结逻辑功用仿真和延时特性仿真。经过仿真,发现规划中的过错与缺乏,对规划输入进行修正和完善,终究到达规划要求。

  4. 在仿真成果正确今后,就能够进行器材编程,即经过编程器(Programmer)将规划文件下载到FPGA芯片中,在实践芯片中进行实践信号的时序验证,就芯片的实践运转功用进行体系测验。

复用器中的FPGA逻辑规划

  在MPEG-2编码复用器中,FPGA所完结的逻辑功用首要是:

  (1)体系上电后,完结对其他器材(如DSP、、FIFO)的复位;

  (2)呼应体系主控单元DSP的指令,从相应的输入FIFO中读取TS流数据,做并串改换后传输至DSP的串行输进口;

  (3)因为复用器有必要对进入该体系的数据传送流(TS流)中的程 序参阅时钟域(PCR域)中的数值进行补偿计数.因而,FPGA还需求完结:

  a.在复用器的数据传送流输入端检测PCR域并纪录PCR域初值;

  b.在复用器的数据传送流输出端检测PCR域并将经过补偿计数后的PCR的新值 装载进PCR域;

  (4)其他一些逻辑。

  1、输入输出FIFO的复位模块

  输入输出FIFO复位模块较为简略.它由文本输入办法完结,内部首要由计数器和D触发器组成。它对电路的操控首要包含:整个体系上电后,主控单元DSP经过I/O端口向FPGA宣布FIFO复位的指令, FPGA经过地址译码,发生RSFIFO信号.RSFIFO作为计数器内部的清0端信号,CLK38(大局时钟信号)作为计数器的时钟信号,并引导计数器开端计数。计数器计数到必定数值时,再连通D触发器先后发生RESET(输入输出FIFO复位信号)以及FO_ENA(输出FIFO读答应信号),完结了FIFO复位模块的逻辑时序.

  2、并/串转化模块

  图3是并串模块的上层图。其I/O引脚状况见表1:

 
表1 并/串转化模块I/O引管脚阐明

管脚称号 管脚功用
CLK38 并串模块作业时钟
HF 输入FIFO半满信号
Q[8…0] TS流并行数据信号
P——CLK TS流串行数据包同步信号
S——DATA TS流串行数据信号
S——CLK TS流串行数据时钟信号
FIFO——R——CLK 输入FIFO读时钟信号
CLK——CONTROL 输入FIFO读时钟操控信号

  因为MAX+PLUSII的旧式宏函数中只供给了作4、5、8位和16位并串改换的移位寄存器 ,而此处体系完结的是9位并串改换(8位数据位加1位包同步位),因而有必要自己编写tdf文件,而不能直接调用宏函数。详细的功用完结为:

  挑选运用9个D触发器,将它们彼此连通组成9位的移位寄存器。一旦发生输入FIFO的半满信号(HF),模块开端作业,将输入FIFO中的9位并行数据读入移位寄存器中,在CLK38的作业时钟操控下,将9位数据次序串行移出发生S_DATA(TS流串行数据)。并且,在模块中还设置了一个4位计数器A。计数器A同样在CLK38的作业时钟操控下,全体模块开端作业时开端同步计数。每计数到9时计数器清0,并输出一个高电平信号。而在其他计数值时,该信号输出为低电平。那么,发生的这个信号便是TS流的串行数据包同步信号(P_CLK)。而TS流串行数据的时钟信号(S_CLK),很显然便是CLK38。

  此外,将CLK38时钟进行8分频作为输入FIFO的读时钟信号(FIFO_R_CLK)。而输入FIFO读时钟的操控信号(CLK_CONTROL),则由模块中设置的别的一个计数器B来发生,保证输入FIFO一次半满后,FPGA只从其间读取该FIFO最大容量之一半的数据。例如:在本体系中,输入FIFO的最大容量为512个字节。那么,设置的计数器B就有必要是一个9位计数器。计数器的计数时钟为FIFO_R_CLK,从输入FIFO半满,FPGA发动读数时开端计数。每计数到256(输入FIFO容量的一半)时计数器清0,并将输入FIFO读时钟的操控信号(CLK_CONTROL)置为低电平,然后制止再发生输入FIFO读时钟信号。

  3、PCR补偿计数模块

  依据MPEGII规范,TS流中的PCR域共有42位有用码字,由两部分组成:一部分以体系参阅时钟的1/300(90KHZ)为单位,称为program_clock_reference_base,33字段;另一部分称为program_clock_reference_extension, 以体系参阅时钟(27MHz)为单位的9位字段。

  因而,整个PCR补偿计数模块分为两大部分:一部分是9位字段(E0~E8)的PCR域补偿计数模块,由一个8位计数器(调用宏函数8COUNT)和一个4位计数器(调用宏函数74161)组成。其间,8COUNT的计数时钟为27MHz时钟(由硬件电路中的27MHz晶振供给);而74161的计数时钟则为8COUNT供给的最高位进位时钟(由8COUNT中的最高位E7取反后得到);另一部分为33位字段(Q32~Q0)的PCR域补偿计数模块,由4个8位计数器(调用宏函数8COUNT)和一个4位计数器(调用宏函数74161)组成。其间,74161的计数时钟为27MHz时钟300分频后得到的90KHZ时钟,它只对33位字段中的最低位Q0进行补偿计数。第一个8COUNT的计数时钟为74161的Q0位的进位时钟(由Q0取反后得到);而其他3个8COUNT的计数时钟则分别为前一个8COUNT的进位时钟(即分别由Q8,Q16,Q24取反后得到)。

  4、复用体系FPGA逻辑规划中一些技巧

  在该体系FPGA逻辑规划进程中,因为体系结构比较复杂,整个FPGA逻辑规划也比较大,所以在作逻辑规划时,一般应有一个全体的考虑。详细作规划时,应该选用层次化的结构规划。别的,还有必要结合整个体系的特色,有意识的对FPGA中逻辑规划进行优化和精简。例如:检测TS数据流的包同步字0X47,因为该同步头字节并不是仅有的,中心可能有码字也恰为其值。因而,一般状况下,FPGA查找同步码字的逻辑如下:首要找到第一个0X47,然后进行计数,计到187字节后,再检测是否为0X47,如果是,输出包同步信号;接着每隔187检测一次,如是0X47,则持续输出包同步信号,如不是,则从事开端查找0X47。

  而在该体系的规划中,并没有选用这种办法,而是运用了I/O FIFO的9比特特性,FPGA直接查找9位包同步字节0X147。别的,在PCR域补偿计数的模块中,也存在一个PCR域承认的问题。PCR域的长度为6个字节48位码字(42位有用码字加6位保存位),在FPGA现已装载PCR域的初值后,完全能够将PCR域中的6个字节改为预先设定好的协议码字(当然,它们有必要关于码流而言是仅有的)。这样,在TS码流输出端进即将补偿计数后的PCR数值从头装载进PCR域的作业时,FPGA不只能够很便利的识别出PCR域的详细位置,并且还能够从这些协议码字中读出较多的复用信息。

  简练而有用的FPGA逻辑规划,能够使体系运转的稳定性得到很大的改进。

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/changshang/fabu/192988.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部