CN202142057U - 一种数字信号处理的嵌入式开发系统 - Google Patents
一种数字信号处理的嵌入式开发系统 Download PDFInfo
- Publication number
- CN202142057U CN202142057U CN201120191462U CN201120191462U CN202142057U CN 202142057 U CN202142057 U CN 202142057U CN 201120191462 U CN201120191462 U CN 201120191462U CN 201120191462 U CN201120191462 U CN 201120191462U CN 202142057 U CN202142057 U CN 202142057U
- Authority
- CN
- China
- Prior art keywords
- module
- fpga
- unit
- microprocessor
- configuration
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
Images
Landscapes
- Logic Circuits (AREA)
Abstract
一种数字信号处理开发系统,兼具微处理器和FPGA两种架构,两者可并行或独立工作,处理能力强大,满足用户高速信号处理要求;配置灵活,为微处理器和FPGA提供可靠的配置接口以及多种配置方式;最多提供17路的ADC接口和2路DAC接口,同时还提供最多4个PCIE和2个SFI接口;提供各种常规总线接口;良好的人机接口,可以实时显示接收到的数据,具有较好的可视性与可操作性。
Description
技术领域
本实用新型涉及一种高速数字信号处理开发系统,特别是涉及一种基于微处理器和FPGA(可编程门阵列)实现数字信号处理的通用嵌入式开发系统。
背景技术
当前数字通信、图像处理等技术发展速度日新月异,新型业务和处理技术希望硬件板卡供应商提供高性能的硬件平台,以满足高速率、大带宽的数字信号处理要求。FPGA(可编程门阵列)以其分布式处理架构和动态可重构性能,日益成为高速数字信号处理的首选。而ARM芯片以其丰富的协议接口和强大的处理能力,成为工业控制、通信协议处理的首选架构。本专利涉及的嵌入式开发系统同时提供上述两种架构,能满足客户在数字信号处理、图像处理、工业控制等各方面的需求,可广泛应用于通信、多媒体开发、嵌入式系统开发等各领域。由于本实用新型具有灵活的可编程能力,并为客户提供良好的再开发接口,可作为一通用开发平台满足客户各方面的验证需求。
当前电子通信行业总线标准繁多,繁多的接口协议为电子通信业系统集成及产品研发带来较大困难。本实用新型提供业界各种常用的接口如PCIE、USB、以太网、串口RS232/422/485以及CAN总线等标准,满足各种接口部件间的相互转换,实现上下游部件不同接口间中间桥接。
同时本实用新型提供一个电源管理单元。该单元不仅提供给本实用新型各模块正常工作所需的电力供给,而且可通过对该单元的控制芯片编程,实现电源管理芯片各种电压输出(5V以下),满足特殊的电源电压应用场景需求。
而且本实用新型提供最多高达17路的模数转换接口和2路数模转换接口,可实现数字模拟信号之间的相互转换。本实用新型可级联射频收发前端或工业控制中模拟信号输入输出端,特别适合相控阵天线阵列信号处理、通信业务信号接入、工业现场总线控制等应用场景。
最后本实用新型提供如触摸屏、液晶屏等丰富人机接口,满足客户用户界面、通信收发数据的实时显示,具有较好的可视性。同时提供内存条、大容量电子硬盘,满足如Linux、Wince等各种操作系统的移植与开发,为产品维护和性能扩展带来极大空间。
发明内容
本实用新型的目的在于提供一种高速数字信号处理开发系统,特别是涉及一种基于微处理器和FPGA(可编程门阵列)的通用嵌入式开发系统。
本实用新型提供一种高速数字信号处理嵌入式开发系统,,应用于各种高速数字信号信号处理场景,如通信接入、相控阵天线等。其包括:FPGA模块,包括FPGA单元;FPGA辅助工作模块,与FPGA模块相连,包括为了给FPGA提供稳定工作状态的FPGA外围的电阻、电容、电感,第一存储器,第二存储器,晶振电路甲,所述的电阻电容为FPGA单元稳定工作提供电源去耦,所述的第一存储器为FPGA单元数字信号处理提供数据暂存,第二存储器为FPGA单元被配置成微处理器模式时提供程序存储,所述的晶振电路甲为FPGA单元提供时钟;微处理器模块,通过外扩存储器接口(EMIF)、通用IO口与FPGA模块相连,包括核心的ARM处理器单元;微处理器辅助工作模块,与微处理器模块相连,包括为了给微处理器提供稳定工作状态的电阻、电容、电感,第三存储器,第四存储器,第五存储器,晶振电路乙,所述的电阻电容为微处理单元稳定工作提供电源去耦,所述的第三存储器为微处理器提供数据暂存,所述的第四存储器为运行于微处理器的程序提供存储空间,所述的第五存储器为大型程序如操作系统运行时提供数据空间和程序运行空间,所述的晶振电路乙为微处理器单元提供时钟;数字与模拟转换接口模块,与FPGA模块相连,包括模拟/数字转换(ADC)单元与数字/模拟转换(DAC)单元;FPGA外围总线接口模块,与FPGA模块相连,包括PCIE接口单元,SFI接口单元与RS485/RS422协议接口单元;微处理器外围总线接口模块,与微处理器模块相连,包括USB接口单元、以太网接口单元、异步串口(RS232)接口单元;FPGA配置模块,与FPGA模块相连,包括实现FPGA配置的JTAG配置单元和AS配置单元,其中JTAG配置单元包括JTAG配置接插件和JTAG配置电缆以及JTAG配置电路,AS配置单元包括AS配置接插件和AS配置电缆以及AS配置电路(含固化存储器及其外围电阻电容)。JTAG配置和AS配置为FPGA模块的两种配置方式,两者均可实现针对FPGA的在线编程,两者区别在于前者的配置信息掉电即损失,后者配置后,配置信息存储于配置存储器中,掉电不损失;微处理器配置模块,与微处理器模块相连,实现微处理器在线配置,包括微处理器配置接插件和微处理器配置电缆,以及微处理器配置电路;电源管理与复位模块,与上述各个模块均相连,包括电源接入控制单元、电源检测和复位单元和电源供应与管理单元,其中外部电源控制单元负责外部电源接通与断开控制,电源检测和复位单元监控当前单元供给情况,若电源掉电或手动触发均可为上述各模块提供异步复位信号,电源供应与管理单元为各模块提供所需的各种电源电压,同时也可通过在线编程可提供5V以下各种电源的输出;人机接口模块,与微处理器模块相连,包括液晶显示单元与液晶显示控制单元,人机接口模块实现数据的实时显示。
本实用新型所述的核心模块为FPGA模块和微处理器模块,上述两者可分别独立工作,也可并行联合工作,用户可根据信号处理特点选择合适架构的模块。同时可通过FPGA配置模块、微处理器配置模块分别对FPGA模块和微处理器模块进行在线编程和配置更新,将用户自定义的程序重新下载到FPGA模块和微处理器模块,实现用户设计的特定数字信号处理目的,从而使本实用新型具有极大的灵活性。当FPGA模块和微处理器模块并行工作时,FPGA模块为微处理器模块的下位机,通过外扩存储器接口微处理器模块可读取或擦写FPGA模块中数据,实现两模块的数据交换。
其他模块为上述两模块提供各种接口和辅助工作条件,用户可根据需要选择合适的接口进行数据的输入与输出。
所述FPGA模块中执行如下步骤:步骤1,所述装置开始工作后,若电源管理与复位模块中外部电源接入控制单元处于接通状态,电源供应与管理单元为FPGA模块提供所需的各种电源电压,FPGA模块开始工作。步骤2,所述FPGA模块通过特殊的数据总线从AS配置单元中的固化存储器读取上次用户配置的用户程序,并按照用户程序将FPGA配置成特定的用户模式,等待相应的数据输入和信号触发。若有数据输入或信号触发,FPGA完成用户自定义的数字信号处理,并可将处理结果通过合适的数据接口输出或显示。若用户还没有在AS配置单元中的固化存储器固化用户程序,则FPGA模块等待新的配置程序注入,当前空操作。步骤3,FPGA模块进入用户模式后,用户可通过FPGA配置模块中的JTAG配置单元或AS配置单元,通过配置电缆和配置接插件,将用户在PC中自定义的新配置下载注入到FPGA模块中,FPGA按照用户程序进入新的用户模式。其中JTAG配置方式和AS配置均为FPGA模块的两种配置方式,两者的区别主要有两点:一是JTAG配置时新的配置信息直接注入给FPGA,FPGA直接按照新配置完成更改;而AS配置时新的配置信息直接注入对象为AS配置单元中的固化存储器,配置完成后,FPGA需从固化存储器中读取新配置完成配置更新。二是JTAG配置时配置信息掉电即损失,即掉电后配置信息丢失,从新按照JTAG配置前固化存储器中配置信息工作,后者配置后,配置信息存储于配置存储器中,掉电不丢失,掉电后按照AS配置后固化存储器中配置信息工作。步骤4,FPGA配置成新用户模式后,等待相应的数据输入和信号触发。若有新的数据输入或信号触发,FPGA完成用户自定义的数字信号处理,并可将处理结果通过合适的数据接口输出或显示。
所述微处理器模块中执行如下步骤:步骤1,所述装置开始工作后,若电源管理与复位模块中外部电源接入控制单元处于接通状态,电源供应与管理单元按照一定的供电先后次序为微处理模块提供所需的各种电源电压,微处理器模块开始工作。步骤2,所述微处理器模块通过特殊的数据总线从微处理器辅助工作模块中的第四存储器读取上次用户配置的用户程序,从用户程序中第一条开始执行,常规是先完成用户指定的用户模式设定(对应接口总线寄存器使能或禁止),然后进入主程序,主程序常规为空循环,等待相应的数据输入和信号触发。若有数据输入或信号触发,微处理器完成用户自定义的数字信号处理,并可将处理结果通过合适的数据接口输出或显示。若用户还没有在第四存储器固化用户程序,则微处理器模块等待新的配置程序注入,当前空操作。步骤3,微处理器模块进入用户模式后,用户可通过微处理器配置模块中的微处理器配置接插件和微处理器配置电缆,将用户在PC中自定义的新配置下载注入到第四存储器中,具体是以微处理器单元为中介,将新的配置信息转写注入至第四存储器中。步骤4,当微处理器接受异步复位信号或重新上电后,微处理器按照用户程序进入新的用户模式,并从新用户程序中第一条开始执行,直至进入主程序空循环,等待相应的数据输入和信号触发。若有新的数据输入或信号触发,微处理器完成用户自定义的数字信号处理,并可将处理结果通过合适的数据接口输出或显示。
优选的,所述的FPGA辅助工作模块中第一存储器为SRAM,第二存储器为闪存,其中第一存储器为FPGA单元数字信号处理提供数据暂存,第二存储器为FPGA单元被配置成微处理器模式时提供程序存储。
优选的,所述的微处理器辅助工作模块中第三存储器为SRAM,第四存储器为闪存,第五存储器为DRAM,其中第三存储器为微处理器提供数据暂存,第四存储器为运行于微处理器的程序提供存储空间,第五存储器为大型程序如操作系统运行时提供数据空间和程序运行空间。
优选的,所述的数字与模拟转换接口模块,与FPGA模块相连,包括数字/模拟转换(ADC)单元与模拟/数字转换(DAC)单元,本实用新型最多可以提供17路的ADC接口和2路DAC接口。
优选的,所述的FPGA外围总线接口模块,与FPGA模块相连,包括PCIE接口单元,SFI接口单元与RS485/RS422协议接口单元,实现FPGA模块数据通过上述各接口的输入、输出。
优选的,所述的微处理器外围总线接口模块,与微处理器模块相连,包括USB接口单元、以太网接口单元、异步串口(RS232)接口单元,实现微处理器模块数据的输入、输出。
优选的,所述的人机接口模块,与微处理器模块相连,包括液晶显示单元与液晶显示控制单元,人机接口模块实现数据的实时显示。
与现有技术相比,本实用新型提供的高速数字信号处理开发系统具有以下优点:
1、本实用新型功能齐全,兼具微处理器和FPGA两种架构,两者可并行或独立工作,处理能力强大,满足用户高速信号处理要求。
2、本实用新型配置灵活,为微处理器和FPGA提供可靠的配置接口以及多种配置方式,便于客户程序动态更新,有效保证本实用新型作为通用嵌入式开发平台的广泛适用性。
3、本实用新型最多提供17路的ADC接口和2路DAC接口,单路最高数据采样率可达300MSPS,满足通道数目要求较多、处理速度很快的阵列数字信号处理要求;同时还提供最多4个PCIE和2个SFI接口,其数据接口吞吐率可达16GBPS,完全满足高速数字信号处理要求。
4、本实用新型提供各种常规总线接口,这些接口包括USB、以太网、串口RS232/422/485等,便于与不同总线接口的上下游设备级联对接,同时也可以微处理模块为核心,实现各种协议标准间相互转换。
5、良好的人机接口,可以实时显示接收到的数据,具有较好的可视性与可操作性。
本实用新型的多功能接口转换装置,通过JTAG配置接口可以实现程序重载,从而达到性能参数升级的目的。同时该装置也具有丰富的外设存储空间和数据空间(最高达4GB的闪存以及512M的内存),可实现操作系统移植,提升产品性能。本实用新型可应用于性能要求较高的高速数字信号处理应用场景如通信接入、智能天线等,同时也可作为普通产品开发或教学用的通用嵌入式平台,具有广泛的实用性。
附图说明
以下结合附图和具体实施方式来进一步说明本实用新型。
图1为本实用新型高速数字信号处理的嵌入式开发系统各模块互联关系示意图;
图2为人机电源管理与复位模块工作原理框图;
图3为FPGA辅助工作模块互联关系框图。
图4为微处理器辅助工作模块互联关系框图。
图5为FPGA配置模块组成框图。
图6为微处理器配置模块组成框图。
图7为FPGA外围总线接口模块组成框图。
图8为数字与模拟转换接口模块组成框图。
图9为微处理器外围总线接口模块组成框图。
图10为人机接口模块组成框图。
具体实施方式
如图1所示,一种高速数字信号处理的嵌入式开发系统,它包括:FPGA模块1、FPGA辅助工作模块2、微处理器模块3、微处理器辅助工作模块4、数字与模拟转换接口模块5、FPGA外围总线接口模块6、微处理器外围总线接口模块7、FPGA配置模块8、微处理器配置模块9、电源管理与复位模块10。本实用新型核心为FPGA模块1与微处理器模块3,两者可分别独立工作,也可并行联合工作。当FPGA模块和微处理器模块并行工作时,FPGA模块为微处理器模块的下位机,FPGA模块1与微处理模块3通过外扩存储器总线与普通IO口相连。通过外扩存储器接口微处理器模块可读取或擦写FPGA模块中数据,实现两模块的数据交换。通过普通IO口,FPGA模块和微处理器模块之间可以实现通信,如FPGA模块通过中断触发方式通知微处理器模块来读取数据。
如图2所示电源管理与复位模块10,与本实用新型中各个模块均相连,包括电源接入控制单元101,电源供应与管理单元102和电源检测和复位单元103。其中电源控制单元101负责外部电源接通与断开控制;电源供应与管理单元102为各模块提供所需的各种电源电压,同时也可通过在线编程可提供5V以下各种电源的输出,电源检测和复位单元103监控当前单元供给情况,若电源掉电或手动触发均可为上述各模块提供异步复位信号。
具体来说,电源电缆插入电源接入控制单元101中电源接插件1011,电源开关1012负责电源接入的通断状态。若电源开关1012接通,电源供应与管理单元102工作,产生合适各模块的各种工作电压g如3.3v、2.5v、1.8v、1.5v、1.2v等,而且各种电压按照特定次序产生,满足微处理器模块启动时各种电源电压上电的时序要求。电源供应与管理单元102产生3.3v电源电压供给电源检测和复位单元103,电源检测和复位单元103检测3.3v电源供给情况,若3.3v电源出现低于额定门限(如2.9v)的掉电情形,电源检测和复位单元会自动产生一个不低于100ms的复位脉冲,作为本实用新型中各个模块的全局复位信号e,同时也可通过手动触发方式,产生有效的复位信号,作为各模块的手动异步复位信号。电源供应与管理单元102稳定工作后,微处理器模块3通过特殊控制总线k,控制电源供应与管理单元102的工作状态,也就是可以通过对微处理器模块3在线编程,实现对电源供应与管理单元102的输出控制。电源供应与管理单元102为一多输出的电源转换装置,通过微处理器模块3输出控制命令并按照特殊的格式发送给电源供应与管理单元,电源供应与管理单元空余端口即可输出5v以下各种电源电压p,满足一些特殊的电压需求场景。而且电源供应与管理单元调整精度很高,调整步进精度可以达到0.02v,对电压稳定度要求较高的场景很有吸引力。
FPGA模块1核心为一高性能的FPGA,可以为当前主流FPGA供应商如Altera或Xilinx公司产品。FPGA为分布式架构,其在线可编程特性和数目众多的管脚为发展日新月异的数字信号处理带来极大便利。而且FPGA内部具有丰富的DSP硬件乘法器和块RAM资源,可充分满足数字信号处理大量的乘累加需求。高档次FPGA提供基于LVDS电平标准的高速串行接口,这些接口可以配置成上层的PCIE或SFI协议,满足高速数据传输需求。
为了使FPGA模块稳定工作,提供FPGA辅助工作模块2,见图3。FPGA辅助工作模块2包括电阻、电容、电感21,第一存储器22,第二存储器23,晶振电路甲24,所述的电阻电容电感21为FPGA模块1稳定工作提供电源去耦,所述的第一存储器22为FPGA模块数字信号处理提供数据暂存,第二存储器23为FPGA模块配置成微处理器模式时提供程序存储,所述的晶振电路甲24为FPGA模块提供高精度时钟;第一存储器22为SRAM,第二存储器23为闪存。
微处理器单元3可以是一高性能微处理器如ARM。ARM处理器拥有丰富的外设接口以及较高的处理速度,在工业控制领域有广泛的应用市场。微处理器单元是整个系统的处理中心,它可应用于需要复杂逻辑判断的应用场景,如通信中链路控制,人机界面显示等。微处理器与FPGA联合工作时,处于上位机状态,负责数据的调度,同时也负责人机接口模块11的初始化控制,以及微处理器外围总线接口上层协议处理等。
为了使微处理器模块3稳定工作和扩展其性能,提供微处理器辅助工作模块4,见图4。微处理器辅助工作模块4包括为电阻、电容电感41,第三存储器42,第四存储器43,第五存储器44,晶振电路乙45。所述的电阻电容电感41为微处理单元稳定工作提供电源去耦,所述的第三存储器42为微处理器提供数据暂存,所述的第四存储器43为运行于微处理器的程序提供存储空间,所述的第五存储器44为大型程序如操作系统运行时提供数据空间和程序运行空间,所述的晶振电路46为微处理器单元提供时钟。第三存储器42为256M空间的SRAM,第四存储器43为4Gb空间的闪存,第五存储器可为运行速度133M且拥有512M空间的内存。
FPGA配置模块8,与FPGA模块1相连,见图5。FPGA配置模块8包括实现FPGA配置的JTAG配置单元81和AS配置单元82,其中JTAG配置单元81包括JTAG配置电缆811、JTAG配置接插件812以及JTAG配置电路813,AS配置单元82包括AS配置电缆821、AS配置接插件822以及AS配置电路823(含固化存储器8232及其外围电阻电容8231),JTAG配置和AS配置为FPGA模块的两种配置方式,两者均可实现针对FPGA的在线编程,两者区别在于前者的配置信息掉电即损失,后者配置后,配置信息存储于配置存储器中,掉电不损失。
选用JTAG配置单元81对所述FPGA模块进行配置时,执行如下步骤:步骤1,所述装置开始工作后,若电源接入控制单元101中电源开关1012的处于接通状态,电源供应与管理单元102为FPGA模块1提供所需的各种电源电压如3.3v、2.5v、1.2v,FPGA模块1开始工作,进入配置模式。步骤2,所述FPGA模块1通过特殊的数据总线从AS配置单元82中的固化存储器8232读取上次用户配置的用户程序,并按照用户程序将FPGA配置成特定的用户模式,等待相应的数据输入和信号触发。若有数据输入或信号触发,FPGA完成用户自定义的数字信号处理,并可将处理结果通过合适的数据接口输出或显示。若用户还没有在固化存储器固化用户程序,则FPGA模块等待新的配置程序注入,当前空操作。上述配置导引过程完成后,FPGA模块进入用户模式。步骤3,FPGA模块进入用户模式后,用户可通过JTAG配置单元81中通过JTAG配置电缆811和JTAG配置接插件812,使PC与FPGA模块完成电路连接。JTAG配置电缆811为一接口转换器,可将USB接口或并口转换成JTAG接口。因此JTAG配置电缆一端接PC的USB接口或并口,另一端接JTAG配置接插件812。
最后用户在PC中自定义的新配置下载注入到FPGA模块中,下载完成后,FPGA即可按照用户程序指定完成新的配置,进入新的用户模式。注意FPGA在配置信号流导引下完成重构重配,其机理是FPGA内部硬件决定和实现的。步骤4,FPGA配置成新用户模式后,等待相应的数据输入和信号触发。若有新的数据输入或信号触发,FPGA完成用户自定义的数字信号处理,并可将处理结果通过合适的数据接口输出或显示。
选用AS配置单元82对所述FPGA模块进行配置时,执行如下步骤:步骤1,所述装置开始工作后,若电源接入控制单元101中电源开关1012的处于接通状态,电源供应与管理单元102为FPGA模块1提供所需的各种电源电压如3.3v、2.5v、1.2v,FPGA模块1开始工作,进入配置模式。步骤2,所述FPGA模块1通过特殊的数据总线从AS配置单元82中的固化存储器8232读取上次用户配置的用户程序,并按照用户程序将FPGA配置成特定的用户模式,等待相应的数据输入和信号触发。若有数据输入或信号触发,FPGA完成用户自定义的数字信号处理,并可将处理结果通过合适的数据接口输出或显示。若用户还没有在固化存储器固化用户程序,则FPGA模块等待新的配置程序注入,当前空操作。上述配置导引过程完成后,FPGA模块进入用户模式。步骤3,FPGA模块进入用户模式后,用户可通过AS配置单元82中通过AS配置电缆821和AS配置接插件822,使PC与FPGA模块完成电路连接。AS配置电缆821为一接口转换器,可将USB接口或并口转换成JTAG接口。因此AS配置电缆821一端接PC的USB接口或并口,另一端接AS配置接插件822。最后用户在PC中自定义的新配置下载注入到固化存储器8232中。下载完成后,FPGA即可按照步骤2中相同程序和方法,按特定的总线格式从固化存储器读取新的配置信息。新配置信息从固化存储器注入FPGA模块,FPGA模块即可按照用户程序指定完成新的配置,进入新的用户模式。同样,FPGA在配置信号流导引下完成重构重配,其机理是FPGA内部硬件决定和实现的。步骤4,FPGA配置成新用户模式后,等待相应的数据输入和信号触发。若有新的数据输入或信号触发,FPGA完成用户自定义的数字信号处理,并可将处理结果通过合适的数据接口输出或显示。
JTAG配置方式和AS配置均为FPGA模块的两种配置方式,两者的区别主要有两点:一是JTAG配置时新的配置信息直接注入给FPGA,FPGA直接按照新配置完成更改;而AS配置时新的配置信息直接注入对象为AS配置单元中的固化存储器,配置完成后,FPGA需从固化存储器中读取新配置完成配置更新。二是JTAG配置时配置信息掉电即损失,即掉电后配置信息丢失,从新按照JTAG配置前固化存储器中配置信息工作,后者配置后,配置信息存储于配置存储器中,掉电不丢失,掉电后按照AS配置后固化存储器中配置信息工作。
微处理器配置模块9,与微处理器模块3相连,见图6. 微处理器配置模块9实现微处理器在线配置,其包括微处理器配置电缆91、微处理器配置接插件92以及微处理器配置电路93。
采用微处理器配置模块9对所述微处理器模块3配置时,执行如下步骤:步骤1,所述装置开始工作后,若电源接入控制单元101中电源开关1012的处于接通状态,电源供应与管理单元按照一定的供电先后次序为微处理模块3提供所需的各种电源电压如1.2v、1.8v、1.5v、3.3v等,微处理器模块开始工作,进入配置阶段。步骤2,所述微处理器模块3通过特殊的数据总线从微处理器辅助工作模块4中的第四存储器43读取上次用户配置的用户程序,从用户程序中第一条开始执行,常规是先完成用户指定的用户模式设定(各种接口总线或中断对应寄存器使能或禁止),然后进入主程序,主程序常规为空循环,等待相应的数据输入和信号触发。若有数据输入或信号触发,微处理器完成用户自定义的数字信号处理,并可将处理结果通过合适的数据接口输出或显示。若用户还没有在第四存储器43固化用户程序,则微处理器模块3等待新的配置程序注入,当前空操作。上述配置导引过程完成后,微处理器模块进入用户模式。步骤3,微处理器模块3进入用户模式后,用户可通过微处理器配置模块3中的微处理器配置电缆91和微处理器配置接插件92,将用户在PC中自定义的新配置下载注入到第四存储器中,具体是以微处理器单元3为中介,将新的配置信息转写注入至第四存储器43中。步骤4,当微处理器模块3接受异步复位信号或重新上电后,微处理器按照用户程序进入新的用户模式,并从新用户程序中第一条开始执行,直至进入主程序空循环,等待相应的数据输入和信号触发。其过程同步骤2,内部机理由微处理器bootloader硬件来决定。若有新的数据输入或信号触发,微处理器完成用户自定义的数字信号处理,并可将处理结果通过合适的数据接口输出或显示。
FPGA外围总线接口模块6,与FPGA模块1相连,其包括依托FPGA实现的各种总线接口,具体包括PCIE接口单元61,SFI接口单元62,RS422协议接口单元63与RS485协议接口单元64,如图7所示。所述的PCIE接口单元61包含4个PCIE协议接口接插件:PCIE接插件甲611、PCIE接插件乙612、PCIE接插件丙613、PCIE接插件丁614。 所述的SFI接口单元62包含2个SFI协议接口接插件:SFI接插件甲621、SFI接插件乙622。RS422协议接口单元63包括RS422物理层处理子单元631、RS422接插件632。RS485协议接口单元64包括RS485物理层处理子单元641、RS485接插件642。本实用新型最多可以同时接入4块支持PCIE协议和2块支持SFI协议的下游设备。
以下分别描述各种接口实现的基本思路。
PCIE接口单元61,SFI接口单元62在本实用新型中仅提供对应协议的被动型接插件。由于该接插件与PCIE接口与SFI接口信号均采用的是LVDS电平标准,所以上述接插件均与支持LVDS电平标准的FPGA管脚相连。FPGA模块可通过FPGA配置模块8配置PCIE接口协议或SFI接口协议IP核,将FPGA内部配置成PCIE接口或SFI接口对应的硬件电路,当PCIE接口单元61,SFI接口单元62中的接插件接入下游设备时,即可在FPGA内部完成PCIE接口或SFI接口的物理层和上层协议层处理。当前主流的FPGA供应商和第三方IP供应商均大量提供PCIE接口或SFI接口的IP核,该IP核具有较强通用性,可迅速移植在FPGA模块中,完成对应接口功能。
RS422接口实现机理如下。当串口RS422接插件632中接入设备时,数据通过该接插件以及PCB物理走线传给RS422物理层处理单元631。RS422物理层处理单元631进行对应的物理层处理,包括串口RS422的总线电平至FPGA模块1接受的电平(例如TTL电平或CMOS电平)的转换。RS422物理层处理单元631完成物理层处理后,将数据通过特定的数据总线传给FPGA模块1。FPGA模块可通过FPGA配置模块8配置RS422网络层处理IP核,使得FPGA内部配置成RS422网络层处理硬件电路。RS422网络层处理硬件电路完成串口RS422的网络层协议处理,去除帧协议信息(去除起始位、停止位),按照定义的数据位宽度恢复得到原始的传输数据。同时,按照协议标准进行奇偶校验,对出错数据进行一定的纠错。上述为RS422接口接收流程,发射流程与此机理相同,方向反转。
RS485接口实现机理如下。当串口RS485接插件642中接入设备时,数据通过该接插件以及PCB物理走线传给RS485物理层处理单元641。RS485物理层处理单元641进行对应的物理层处理,包括串口RS485的总线电平至FPGA模块1接受的电平(例如TTL电平或CMOS电平)的转换。RS485物理层处理单元641完成物理层处理后,将数据通过特定的数据总线传给FPGA模块1。FPGA模块可通过FPGA配置模块8配置RS485网络层处理IP核,使得FPGA内部配置成RS485网络层处理硬件电路。RS485网络层处理硬件电路完成串口RS485的网络层协议处理,去除帧协议信息(去除起始位、停止位),按照定义的数据位宽度恢复得到原始的传输数据。同时,按照协议标准进行奇偶校验,对出错数据进行一定的纠错。上述为配置RS485接口接收流程,发射流程与此机理相同,方向反转。
数字与模拟转换接口模块5,与FPGA模块1相连,见图8,包括模拟/数字转换(ADC)单元51与数字/模拟转换(DAC)单元52。其中模拟/数字转换(ADC)单元51最多可实现17个通道的并行模拟/数字转换(ADC),数字/模拟转换(DAC)单元52最多可实现2个通道的并行数字/模拟转换(DAC)。各通道的模拟/数字转换(ADC)和数字/模拟转换(DAC)的最高时钟抽样率均可达到300M。如此通道数目的高速数字与模拟转换接口,为大吞吐量的阵列数字信号处理创造了条件。
模拟/数字转换(ADC)单元51包含17个通道的并行模拟/数字转换(ADC),以其中1个通道为例说明其构成。第一个模拟/数字转换(ADC)通道包括AD转换接插件51011、AD转换变压器电路子单元51012、AD转换电路子单元51013。其中AD转换接插件51011可以为SMA同轴电缆接插件,负责将模拟信号沿同轴电缆输入,通过pcb走线传给后续的AD转换变压器电路子单元51012。AD转换变压器电路子单元51012核心为一变压器,变压器电路在此有两个作用:一是阻抗匹配,将输入阻抗调整为50欧姆,这样可以减少输入信号反射,维护输入信号完整性;二是隔直作用,将上游设备输入信号直流偏置与本实用新型设备隔离,减少两级设备间直流耦合之间的影响。输入信号经过AD转换变压器电路子单元后传给后续的AD转换电路子单元51013,在此实现模拟信号到数字信号的转换。模拟输入信号峰峰值为1v,在此被量化成12bit的数字信号,通过后续特定的数字总线传给FPGA模块。注意FPGA模块在此输给模拟/数字转换(ADC)单元一个采样时钟信号,整个模拟/数字转换(ADC)单元依据此时钟进行模数转换。其他16个通道配置与上述的第一个通道相同。
数字/模拟转换(DAC)单元52,包含并行的2个通道数字/模拟转换(DAC),以其中1个通道为例说明其构成。第一个数字/模拟转换(DAC)通道包括DA转换电路子单元5213、DA转换变压器电路子单元5212、DA转换接插件5211。DA转换电路子单元5213通过特定的数据总线与FPGA模块相连,在此实现数字信号到模拟信号间的转换。FPGA模块1通过特定的数据总线将14bit数据传给DA转换电路子单元5213,同时FPGA模块还传输一个转换时钟信号。DA转换电路子单元完成数字模拟转换后,通过pcb走线,传给后续的DA转换变压器电路子单元5212。DA转换变压器电路子单元5212核心为一变压器,变压器电路在此有两个作用:一是阻抗匹配,将输出阻抗调整为50欧姆,这样可以减少输出信号反射,维护输出信号完整性;二是隔直作用,将本实用新型设备输出信号直流偏置与下游设备隔离,减少两级设备间直流耦合之间的影响。
经过DA转换变压器电路子单元处理后,通过pcb走线传给后续的DA转换接插件5211,DA转换接插件5211可以为SMA同轴电缆接插件,负责将模拟信号沿同轴电缆输出给下游设备。另一个数字/模拟转换通道配置与上述的第一个通道相同。
微处理器外围总线接口模块7,与微处理器模块7相连,见图9,其包括USB接口单元71、以太网接口单元72、RS232接口单元73;微处理器外围总线接口模块7实现3种总线接口的收发,这种总线接口为USB接口、以太网接口、串口RS232接口。各种接口单元包括两部分:一是接口接插件,负责信号接入;二是接口物理层处理子单元,在此负责物理层处理,如对应总线电平标注与微处理总线电平(TTL或CMOS)标准之间的相互转换,以太网接口物理层处理子单元还负责输入信号的曼彻斯特编解码处理。具体来说,USB接口单元71包括USB物理层处理子单元711、USB接插件712;以太网接口单元72包括以太网物理层处理子单元721、以太网接插件722;RS232接口单元73包括RS232物理层处理子单元731、RS232接插件732。微处理模块内部包含各接口网络层处理单元,如USB接口网络层处理单元、以太网接口网络层处理单元、RS232接口网络层处理单元,这些网络层处理单元集成于微处理内部,对应于微处理器内部特定硬件电路,可在操作软件指引下完成对应接口的网络层处理工作。
下面实施例,以接口甲接收数据传给微处理器单元处理后,再由接口乙发送传给下游设备来说明微处理器外围总线接口模块的基本工作机理。接口甲和接口乙可以为上述的USB接口、以太网接口、串口RS232接口中任一接口。实施例的流程如下:
步骤S1,本实用新型上电开始工作后,微处理器模块3从微处理器辅助工作模块4的第四存储器43读取操作程序,根据用户设定好的工作模式对接口甲的物理层处理单元、接口乙的物理层处理单元、接口甲的网络层处理单元以及接口乙的网络层处理单元进行相应的参数设定。其中,接口甲的物理层处理单元和接口乙的物理层处理单元位于微处理器模块3的外部,对这些物理层处理单元的初始参数设定可以通过微处理器模块3与这些物理层处理单元之间的控制总线完成。接口甲的网络层处理单元和接口乙的网络层处理单元位于微处理器模块3的内部,对这些网络层处理单元的初始参数设定可以通过更改内部寄存器设置来实现。
步骤S2,接口甲的接插件接入上游设备后,数据通过该接插件以及PCB物理走线传给接口甲的物理层处理单元。接口甲的物理层处理单元进行对应的物理层处理,包括输入接口的电平至微处理器模块3接受的电平(例如TTL电平或CMOS电平)的转换和输入接口的总线协议的物理层译码(例如,网口的物理层曼彻斯特码)。数据经过接口甲的物理层处理单元完成物理层处理后,通过特定的数据总线传给微处理器模块3中接口甲的网络层处理单元。接口甲的网络层处理单元进行对应的网络层协议处理,包括根据定义的总线协议参数去除帧协议信息(如以太网中的TCP/IP协议)以恢复原始传输数据。同时还按照协议标准进行解码校验并对出错数据进行一定的纠错。之后,接口甲的网络层处理单元将数据及其传输状况信息传给微处理器模块中核心地位的中央处理单元,并可由中央处理单元再转发给微处理器辅助工作模块4的第三存储器42中,作为数据暂存。
步骤S3,中央处理单元将带发射数据发给接口乙的网络层处理单元。此外,中央处理单元优选为可以与上游设备通信,并增加用户自定义协议处理,满足客户性能扩展要求。接口乙的网络层处理单元对数据重新添加网络层协议和编码校验信息,然后通过数据总线传给接口乙的物理层处理单元。在接口乙的物理层处理单元进行对应的物理层协议处理,包括微处理器模块3发射的电平(例如TTL电平或CMOS电平)至接口乙的电平的转换和接口乙的总线协议的物理层编码。接口乙的物理层处理单元完成物理层处理后,通过特定的数据总线,传给接口乙的接插件。接口乙的接插件通过接口电缆联接下游设备,完成数据发射。
人机接口模块11,与微处理器模块3相连,如图10。人机接口模块11包括液晶显示单元112与液晶显示控制单元111,人机接口模块显示用户界面或者数字信号处理中数据结果实时显示。
用户将本实用新型涉及的装置上电后,微处理器单元3主动运行程序,同时通过控制总线对液晶显示控制单元111进行初始状态设置,使液晶显示控制单元111进入合理的工作状态(图10中a所示)。当液晶显示控制单元完成初始工作状态设定后,等待接收图像数据。微处理模块3通过数据总线输出图像数据(图10中b所示)给液晶显示控制单元,液晶显示控制单元接收数据并按照特定的图像显示标准给液晶显示单元112刷屏。从而在液晶显示单元112显示用户界面(GUI)和数字信号处理中数据结果。
具有液晶屏幕的人机接口使得本实用新型具有更好的可视性与可阅读性,液晶屏幕的应用也使得本实用新型可应用于图像数字信号处理中。
综上所述,本实用新型兼容FPGA与微处理器两种截然不同架构,并提供多种良好的配置接口,极大方便了客户的升级开发。同时本实用新型还提供业界常用的各种模拟/数字输入输出接口,极大方便与各种上下游设备级联,具有较强的通用性。作为一通用的数字信号处理开发平台,本实用新型具有广泛的应用前景。
以上描述了本实用新型的基本原理和主要特征及其优点。本行业的技术人员应该了解,本实用新型不受上述实施例的限制,上述实施例和说明书中描述的只是说明本实用新型的原理,在不脱离本实用新型精神和范围的前提下,本实用新型还会有各种变化和改进,这些变化和改进都落入要求保护的本实用新型范围内。本实用新型要求保护范围由所附的权利要求书及其等效物界定。
Claims (7)
1.一种数字信号处理的嵌入式开发系统,其特征在于,包括:
FPGA模块,包括FPGA单元;
FPGA辅助工作模块,与FPGA模块相连,包括为了给FPGA提供稳定工作状态的FPGA外围的电阻、电容、电感,第一存储器,第二存储器,晶振电路甲,所述的电阻电容为FPGA单元稳定工作提供电源去耦,所述的第一存储器为FPGA单元数字信号处理提供数据暂存,第二存储器为FPGA单元被配置成微处理器模式时提供程序存储,所述的晶振电路甲为FPGA单元提供时钟;
微处理器模块,通过外扩存储器接口(EMIF)、通用IO口与FPGA模块相连,包括核心的ARM处理器单元;
微处理器辅助工作模块,与微处理器模块相连,包括为了给微处理器提供稳定工作状态的电阻、电容、电感,第三存储器,第四存储器,第五存储器,晶振电路乙,所述的电阻电容为微处理单元稳定工作提供电源去耦,所述的第三存储器为微处理器提供数据暂存,所述的第四存储器为运行于微处理器的程序提供存储空间,所述的第五存储器为大型程序如操作系统运行时提供数据空间和程序运行空间,所述的晶振电路乙为微处理器单元提供时钟;
数字与模拟转换接口模块,与FPGA模块相连,包括模拟/数字转换(ADC)单元与数字/模拟转换(DAC)单元;
FPGA外围总线接口模块,与FPGA模块相连,包括PCIE接口单元,SFI接口单元与RS485/RS422协议接口单元;
微处理器外围总线接口模块,与微处理器模块相连,包括USB接口单元、以太网接口单元、异步串口(RS232)接口单元;
FPGA配置模块,与FPGA模块相连,包括实现FPGA配置的JTAG配置单元和AS配置单元,其中JTAG配置单元包括JTAG配置接插件和JTAG配置电缆以及JTAG配置电路,AS配置单元包括AS配置接插件和AS配置电缆以及AS配置电路(含固化存储器及其外围电阻电容);
JTAG配置和AS配置为FPGA模块的两种配置方式,两者均可实现针对FPGA的在线编程,两者区别在于前者的配置信息掉电即损失,后者配置后,配置信息存储于配置存储器中,掉电不损失;
微处理器配置模块,与微处理器模块相连,实现微处理器在线配置,包括微处理器配置接插件和微处理器配置电缆,以及微处理器配置电路;
电源管理与复位模块,与上述各个模块均相连,包括电源接入控制单元、电源检测和复位单元和电源供应与管理单元,其中外部电源控制单元负责外部电源接通与断开控制,电源检测和复位单元监控当前单元供给情况,若电源掉电或手动触发均可为上述各模块提供异步复位信号,电源供应与管理单元为各模块提供所需的各种电源电压,同时也可通过在线编程可提供5V以下各种电源的输出;
人机接口模块,与微处理器模块相连,包括液晶显示单元与液晶显示控制单元,人机接口模块实现数据的实时显示。
2.根据权利要求1所述的数字信号处理的嵌入式开发系统,其特征在于,所述的FPGA辅助工作模块中第一存储器为SRAM,第二存储器为闪存,其中第一存储器为FPGA单元数字信号处理提供数据暂存,第二存储器为FPGA单元被配置成微处理器模式时提供程序存储。
3.根据权利要求1所述的数字信号处理的嵌入式开发系统,其特征在于,所述的微处理器辅助工作模块中第三存储器为SRAM,第四存储器为闪存,第五存储器为DRAM,其中第三存储器为微处理器提供数据暂存,第四存储器为运行于微处理器的程序提供存储空间,第五存储器为大型程序如操作系统运行时提供数据空间和程序运行空间。
4.根据权利要求1所述的数字信号处理的嵌入式开发系统,其特征在于,所述的数字与模拟转换接口模块,与FPGA模块相连,包括数字/模拟转换(ADC)单元与模拟/数字转换(DAC)单元,本实用新型最多可以提供17路的ADC接口和2路DAC接口。
5.根据权利要求1所述的数字信号处理的嵌入式开发系统,其特征在于,所述的FPGA外围总线接口模块,与FPGA模块相连,包括PCIE接口单元,SFI接口单元与RS485/RS422协议接口单元,实现FPGA模块数据通过上述各接口的输入、输出。
6. 根据权利要求1所述的数字信号处理的嵌入式开发系统,其特征在于,所述的微处理器外围总线接口模块,与微处理器模块相连,包括USB接口单元、以太网接口单元、异步串口(RS232)接口单元,实现微处理器模块数据的输入、输出。
7.根据权利要求1所述的数字信号处理的嵌入式开发系统,其特征在于,所述的人机接口模块,与微处理器模块相连,包括液晶显示单元与液晶显示控制单元,人机接口模块实现数据的实时显示。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201120191462U CN202142057U (zh) | 2011-06-09 | 2011-06-09 | 一种数字信号处理的嵌入式开发系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201120191462U CN202142057U (zh) | 2011-06-09 | 2011-06-09 | 一种数字信号处理的嵌入式开发系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN202142057U true CN202142057U (zh) | 2012-02-08 |
Family
ID=45553107
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201120191462U Expired - Lifetime CN202142057U (zh) | 2011-06-09 | 2011-06-09 | 一种数字信号处理的嵌入式开发系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN202142057U (zh) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102591244A (zh) * | 2012-03-26 | 2012-07-18 | 中国科学院自动化研究所 | 总线式io采集与控制扩展装置 |
CN102664836A (zh) * | 2012-03-29 | 2012-09-12 | 中国科学院计算技术研究所 | 一种用于宽带无线通信数字基带处理器的原型验证平台 |
CN103150952A (zh) * | 2013-03-12 | 2013-06-12 | 广西生态工程职业技术学院 | 可重构的eda实验平台 |
CN103488607A (zh) * | 2013-09-07 | 2014-01-01 | 安徽华东光电技术研究所 | 嵌入式linux平台下SOC处理器与FPGA芯片的通信系统、方法 |
CN103995764A (zh) * | 2014-05-21 | 2014-08-20 | 电子科技大学 | 一种具有串行总线协议连续触发功能的逻辑分析仪 |
CN109932953A (zh) * | 2017-12-19 | 2019-06-25 | 陈新 | 智能超算可编程控制器 |
CN109981499A (zh) * | 2019-03-29 | 2019-07-05 | 西安思丹德信息技术有限公司 | 一种综合基带数据链系统及数据传输方法 |
CN110597748A (zh) * | 2019-07-31 | 2019-12-20 | 北京航天时代光电科技有限公司 | 一种基于tlk2711的高速通信接口及数据处理系统 |
CN111880611A (zh) * | 2020-06-19 | 2020-11-03 | 深圳宏芯宇电子股份有限公司 | 用于快速交易的服务器及快速交易数据处理方法 |
-
2011
- 2011-06-09 CN CN201120191462U patent/CN202142057U/zh not_active Expired - Lifetime
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102591244A (zh) * | 2012-03-26 | 2012-07-18 | 中国科学院自动化研究所 | 总线式io采集与控制扩展装置 |
CN102591244B (zh) * | 2012-03-26 | 2014-03-12 | 中国科学院自动化研究所 | 总线式io采集与控制扩展装置 |
CN102664836A (zh) * | 2012-03-29 | 2012-09-12 | 中国科学院计算技术研究所 | 一种用于宽带无线通信数字基带处理器的原型验证平台 |
CN102664836B (zh) * | 2012-03-29 | 2015-12-02 | 中国科学院计算技术研究所 | 一种用于宽带无线通信数字基带处理器的原型验证平台 |
CN103150952B (zh) * | 2013-03-12 | 2015-06-17 | 广西生态工程职业技术学院 | 可重构的eda实验平台 |
CN103150952A (zh) * | 2013-03-12 | 2013-06-12 | 广西生态工程职业技术学院 | 可重构的eda实验平台 |
CN103488607A (zh) * | 2013-09-07 | 2014-01-01 | 安徽华东光电技术研究所 | 嵌入式linux平台下SOC处理器与FPGA芯片的通信系统、方法 |
CN103995764A (zh) * | 2014-05-21 | 2014-08-20 | 电子科技大学 | 一种具有串行总线协议连续触发功能的逻辑分析仪 |
CN109932953A (zh) * | 2017-12-19 | 2019-06-25 | 陈新 | 智能超算可编程控制器 |
CN109981499A (zh) * | 2019-03-29 | 2019-07-05 | 西安思丹德信息技术有限公司 | 一种综合基带数据链系统及数据传输方法 |
CN110597748A (zh) * | 2019-07-31 | 2019-12-20 | 北京航天时代光电科技有限公司 | 一种基于tlk2711的高速通信接口及数据处理系统 |
CN110597748B (zh) * | 2019-07-31 | 2021-09-07 | 北京航天时代光电科技有限公司 | 一种基于tlk2711的高速通信接口及数据处理系统 |
CN111880611A (zh) * | 2020-06-19 | 2020-11-03 | 深圳宏芯宇电子股份有限公司 | 用于快速交易的服务器及快速交易数据处理方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN202142057U (zh) | 一种数字信号处理的嵌入式开发系统 | |
CN102495565B (zh) | 一种相控阵雷达天线波束控制装置 | |
CN101930479B (zh) | 一种基于pcie协议的多通道数据采集装置 | |
CN107980215A (zh) | 一种协议转换器及协议转换方法 | |
CN103226541A (zh) | 一种基于fpga和arm的嵌入式高性能异构计算平台 | |
CN106126473A (zh) | 一种基于标准amc平台的数据处理板系统 | |
CN102609288A (zh) | 一种基于fpga/cpld的程序下载器 | |
CN205318373U (zh) | 一种基于vpx结构的无线实时信号处理板卡 | |
CN103901402A (zh) | 重构fpga雷达数字信号处理组件及方法 | |
CN107943732A (zh) | 一种基于国产化fpga器件实现1553b总线模块 | |
CN101494543A (zh) | 蓝牙无线集线器与基于蓝牙无线传输的装置 | |
CN206100049U (zh) | 一种协议转换器 | |
CN106406884A (zh) | 基于.net mvc模式web后台管理应用系统应用的基础开发框架 | |
CN103561116A (zh) | 可重构pxi串行通讯卡及采用该通讯卡实现远程重构的方法 | |
CN202975317U (zh) | 重构fpga雷达数字信号处理组件 | |
Huang et al. | FPGA-based embedded Linux technology in fusion: The MAST microwave imaging system | |
CN105068482B (zh) | 实现cpld在线编程和离线编程的控制方法和控制电路 | |
CN201348686Y (zh) | 一种用于测试小尺寸液晶模块的系统 | |
CN208656793U (zh) | 基于Microblaze核的CAN交换模块和系统 | |
CN103150952B (zh) | 可重构的eda实验平台 | |
CN110333890A (zh) | 远程烧写固化flash数据的方法 | |
CN208638364U (zh) | 一种基于以太网的lvds总线检测系统 | |
CN104570856B (zh) | 可在线编程的监控网络系统 | |
CN107272556A (zh) | 一种用于自动化组装生产线的全数字控制系统 | |
CN203761518U (zh) | 一种基于FPGA的Camera Link接口实验与开发系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CX01 | Expiry of patent term | ||
CX01 | Expiry of patent term |
Granted publication date: 20120208 |