CN104792670B - 一种基于现场可编程门阵列的多路复用光子相关器 - Google Patents
一种基于现场可编程门阵列的多路复用光子相关器 Download PDFInfo
- Publication number
- CN104792670B CN104792670B CN201510166262.XA CN201510166262A CN104792670B CN 104792670 B CN104792670 B CN 104792670B CN 201510166262 A CN201510166262 A CN 201510166262A CN 104792670 B CN104792670 B CN 104792670B
- Authority
- CN
- China
- Prior art keywords
- photon
- multichannel
- module
- signal
- multiplexing
- 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.)
- Active
Links
Landscapes
- Photometry And Measurement Of Optical Pulse Characteristics (AREA)
- Measurement Of Radiation (AREA)
Abstract
本发明涉及基于现场可编程门阵列的多路复用光子相关器,具体是一种由单端口或者多端口输入多路光子信号,并能在测量时间内计算各路信号自相关函数的基于现场可编程门阵列(FPGA)的多路复用光子相关器,主要由系统同步运行模块、多路光子计数模块、多路相关运算模块和通信接口模块等组成。本发明的特点是通过时分复用,从单端口和多端口以串行的方式输入多路光子信号,在测量时间内分别计算各路信号的自相关函数,并输出相关运算结果。本发明与合适的光路配合,可将光子相关光谱测量技术从传统的单点测量扩展到三维空间测量,从而可用于动态光散射二维、三维成像,多点动态光散射信号监测等领域,大大拓展了光子相关光谱技术的应用范围。
Description
技术领域
本发明涉及可用于光子相关光谱测量技术领域,具体涉及一种基于现场可编程门阵列(FPGA)的多路复用光子相关器。
背景技术
目前,应用在光子相关光谱技术中的光子相关器通过获取单点散射光强信号自相关函数,再由上位机的反演算法程序得到颗粒的大小和粒径分布,该类光子相关器在测量均匀样品时能够很好得到准确的结果。例如,在专利文献1(CN101726452A)中,提供一种基于现场可编程门阵列(FPGA)的光子相关器,能用于光子相关光谱技术中光强自相关函数的硬件实现,达到采样时间、相关运算时间可调,延迟通道数目满足纳米颗粒测量与反演的要求;在专利文献2(CN102313604A)中,提供一种基于复杂可编程逻辑器件(CPLD)和现场可编程门阵列(FPGA)的自适应光子相关器,用于光子相关光谱技术中光强信号相关函数的硬件实现,其与计算机上的软件结合,根据获取到的默认配置的相关函数,自适应地调整采样时间、相关运算时间、延迟通道分配方案,最终获得最优化的相关函数。
但是,对于不均匀的样品,例如测量在空间上发生化学反应的蛋白质或者温度分布不均匀的纳米小球,只能获取单点散射光强信号自相关函数的传统的光子相关器,并不能准确反演出样品的颗粒大小和粒径分布。
本发明设计的基于现场可编程门阵列(FPGA)的多路复用光子相关器,能够实现多采样点,通过获取不同点的多路散射光强信号的自相关函数,实现二维或三维区域的多点计算,可以同时得到样品中不同位置颗粒大小和粒径分布。
发明内容
本发明的目的在于提供一种基于现场可编程门阵列(FPGA)的多路复用光子相关器,通过获取样品的多路散射光强信号的自相关函数,可同时探测平面内不同点的纳米颗粒的大小和粒径分布;根据待测样品的特点,多路复用光子相关器可以通过计算机程序设置复用路数,并配置二维光子相关器的最小采样时间和相关运算时间。
本发明的目的通过如下技术方案实现。
一种基于现场可编程门阵列的多路复用光子相关器,其包括:
系统同步运行模块,固化在FPGA内,实现多路光子计数同步、多路相关运算同步、相关结果输出同步和系统复位同步;
多路光子计器数器模块,固化在FPGA内,按设定的时序,对多路复用的光子信号进行计数,并锁存输出,送入下述多路相关运算模块;
多路相关运算模块,固化在FPGA内,能实时对多路光子计器数器模块传来的多路复用的光子信号数据进行自相关运算,分别得到各路信号的自相关曲线,并锁存输出;
计算机接口模块,固化在FPGA内,通过接口电路与计算机通信,实现相关运算结果的数据输出。
进一步地,所述系统同步运行模块(synchronization_signal)的输入端与时钟晶振连接并输出其他各个模块的同步信号,所述其他各个模块的同步信号包括多路光子计数同步信号、多路相关运算同步信号、相关数据输出同步信号和系统复位同步信号。
进一步地,所述多路光子计数模块(PhotonCounter)接收的信号包括时钟晶振信号、多路光子脉冲,以及系统复位同步信号中的清零信号iCLR,同时所述多路光子计数模块的采样时间可调。
进一步地,所述多路相关运算模块(Correlation)由多路移位寄存器(shift_register)与多路乘法累加器(mac_16b)构成,可实现多路信号的同时自相关运算。
进一步地,所述计算机接口模块(ProOutput1)由串口接收单元(RxdAll)和发送单元(TXDControl)构成,可实现多路复用光子相关器与上位机的通信。
进一步地,所述多路复用光子相关器中,由多路光子计数模块产生的多路复用的光子信号,包括复用路数、最小采样时间、相关运算时间参数;多路复用光子相关器与计算机连接,所述参数通过计算机接口模块进行设定。
进一步地,所述多路复用光子相关器的多路光子计数器模块通过单个端口输入光子信号。
进一步地,所述多路复用光子相关器既能通过单个端口输入多路光子信号,也能通过多端口输入各路光子信号。
与现有技术相比,本发明具有如下优点和技术效果:
多路复用光子相关器的探测像素点可以设置为任意二维或者三维扫描形式,实现多点探测和计算。
多路复用光子相关器能够同时获取各个探测点的散射光强信号的自相关函数,通过上位机的反演程序可以同时得到各个探测点的颗粒的大小和颗粒分布。
多路复用光子相关器能够获取不均匀待测样品的颗粒粒径的分布图。
附图说明
图1为实例中于现场可编程门阵列的多路复用光子相关器的系统框图。
图2固化在FPGA芯片内多路复用光子相关器的程序框图。
图3为固化在FPGA芯片内的同步系统同步运行模块电路图。
图4为固化在FPGA芯片内的多路光子计数模块电路图。
图5为是多路光子计数模块仿真波形图。
图6为多路相关器的原理图。
图7为固化在FPGA芯片内的多路相关运算模块电路图。
图8为固化在FPGA芯片内的最小单元的多路移位寄存模块电路图。
图9为三个最小单元的多路移位寄存模块串联的示意图。
图10为固化在芯片内的多路乘法累加器模块示意图。
图11为是固化在芯片内的计算机接口接收模块电路图。
图12为是固化在芯片内的计算机接口发送模块电路图。
具体实施方式
以上内容以及对本发明的技术方案作了充分的公开,以下再结合附图对本发明的实施作进一步说明,但本发明的实施和保护不限于此。
本实例的系统框图如图1,多路光子信号进入FPGA里的多路光子计数模块。多路复用光子相关器采用默认配置复用路数、最小采样时间和相关运算时间。对不同采样区域的光子脉冲信号分别进行等间隔的计数,在开始运算后,多路光子计数器模块就处于无间断的工作,将各路光子数据源源不断地送入多路相关运算模块。多路相关运算模块首先将采集的多路光子数据送入多路移位寄存器,并按照设定的通道分配方案,启动乘法累加器进行运算,由同步信号控制其移位到多路乘法累加器中进行运算,完成各路的相关运算后可获得不同区域的自相关函数,并将本次结果送入计算机接口模块。最后计算机通信接口模块将各个区域的相关结果送入计算机,完成一次相关运算过程。系统同步运行模块用于协调整个系统运行的同步,包括多路光子计数同步、多路相关运算同步、相关数据输出同步和系统复位同步。
本发明中固化在FPGA芯片的电路模块如图2所示,具体说明如下:
(1)系统同步运行模块
系统同步运行模块用于协调整个系统运行的同步,包括光子计数同步、多路相关运算同步、相关数据输出同步和系统复位同步。系统同步运行模块是否正常运行,关系到整个系统输出数据的稳定性和正确性。如图3所示,synchronization_signal为固化在FPGA芯片上系统同步运行模块。其中,iCLK50M为外部硬件输入时钟脉冲,iRST为输入复位信号,oRST为输出复位信号,oEn为系统模块使能输出信号,oCLR为系统模块清零信号。
当多路复用光子相关器上电后,系统同步运行模块即对iCLK50M进行计数,当小于设定的值时,oRST输出为低电平,各模块在这期间处于复位阶段,同时加载默认的初始值数据。其后oRST输出高电平,各模块正常工作。当系统加载好系统采样时间后,oEn用于驱动多路相关运算模块和串口通信模块的运行。在运算的过程中,当小于最小采样时间,oEn输出低电平,此时光子计数模块开始计数。当完成计数后,oEn输出高电平。oCLR一开始输出高电平,当完成系统的采样后,oCLR输出低电平用于将各个模块的数据清零。
(2)多路光子计数器模块
多路光子计数器模块用于对光电倍增管输出的多路光子数据进行不间断的计数,是多路复用光子相关器进行相关运算的重要组成部分之一。多路光子计数模块设计为两个工作模式相同的光子计数器,通过周期性地轮流开启能够实现不间断地对各路光子数进行计数和输出。
多路光子计数模块实现的功能除了对光子信号进行计数外,还包括启动相关运算模块的多路移位寄存器进行移位和多路乘法累加器进行相乘累加运算的功能,同时也控制着对不同的探测点进行运算。如图4所示,PhotonCounter为固化在FPGA芯片上多路光子计数模块。该电路有4根输入线,3根输出线。其中iRST为复位信号输入,iCLK50M为50M的时钟输入,iCLR为模块清零信号,iPhotonPulse为光子脉冲信号。oDataCLK为数据的输出时钟,oMacWork为控制不同区域进行相关运算的区域标志信号。oData[7..0]为计数结果的输出。
多路光子计数模块仿真波形如图5。iRST为高电平时,计数模块正常工作,以最小采样时间5us为例,当5us计时到,oDataCLK拉为高电平,从oData[7..0]输出数据。此时完成一个区域采样,oMacWork输出高电平的区域标志信号给多路相关运算模块。
(3)多路相关运算模块
多路相关运算模块是该系统的核心模块,它实现的功能主要是对不同探测点的光子数据进行自相关运算,包括了多路移位寄存器模块与多路乘法累加器模块。多路移位寄存器模块完成多路光子数据的存储与移位操作。多路乘法累加器模块完成各个区域的光子数据的相乘与累加操作。
多路自相关运算以多路移位寄存器和多路乘法累加器为基础,以一个2×2的探测区域,每个探测点有4通道的自相关运算为例来说明多路相关器的工作原理,如图6所示,左边虚线框对应多路的移位寄存器,右边虚线方框对应的是多路的乘法累加器。用nij表示采样的光子计数,代表第i个区域,第j次采样的光子数。用Rij表示各个区域的相关运算结果,代表第i通道,第j个采样区域的相关结果数据。
当光电倍增管完成第一个探测区域的扫描后,移位时钟将该区域的光子数n11存储在移位寄存器的第一个单元里,此时所有的乘法累加器只对该区域的光子数做相关运算,并将相关运算的结果存在R11的寄存器里面。当完成第二个探测区域的扫描后,移位时钟将第二区域的光子数n21存储在移位寄存器的第一个单元里,而原来第一个单元的数值n11转移到第二个单元,启动乘法累加单元对该区域的光子数进行运算,并将相关运算的结果存在R12的寄存器里面。当完成第三个探测区域的扫描后,移位时钟将第三区域的光子数n31存储在移位寄存器的第一个单元里,而原来第一个单元的数值n11和第二个单元n21分别转移到第三单元和第二单元,启动乘法累加单元对该区域的光子数进行运算,并将相关运算的结果存在R13的寄存器里面。对第四个采样区域的光子数进行相关运算也是如此。
完成一个周期的扫描后,探测点又回到了第一个采样区域。经过N次采样后,图6中的4个多路累加器保存各个区域的相关运算结果。以第一个区域的相关运算结果为例,其保存的数值分别为:
第1通道:R11(Δτ)=n11n21+n21n31+…+nN-1,1nN,1
第2通道:R21(2Δτ)=n11n31+n21n41+…+nN-2,1nN,1
第3通道:R31(3Δτ)=n11n41+n21n51+…+nN-3,1nN,1
第4通道:R41(4Δτ)=n11n51+n21n61+…+nN-4,1nN,1
其中N为第一个区域的采样次数,这里Δτ为4倍光子计数器的最小采样时间。在FPGA中,多路相关运算模块主要依据上述原理构建了多路移位寄存器模块与多路乘法累加器模块。以采样区域为2×2,通道数为4的光子相关器为例说明在固化在FPGA芯片上多路相关器的构成,如图7所示,以下进行详细说明。
首先,多路移位寄存器模块完成数据的存储与移位操作,具体的电路设计如图8。该电路有4个输入,Move_clk为数据移位时钟,上升沿时产生移位,iEn为使能信号,高电平有效,iCLR为使能信号,低电平有效,PhotonData[7..0]为第一个移位寄存器的数据输入端。当iEn使能,Move_clk上升沿时,数据PhotonData[7..0]移进在移位寄存器单元,同时其他单元数据移进下一单元,以此类推。该电路有4个输出,分别为Data1[7..0]Data2[7..0]Data3[7..0]Data4[7..0],每个输出端口之间的数据间隔为4个数据单位(这里为8bit)。
当相关器需要更多的移位寄存器时,可以将上述移位寄存器做为最小单元串联起来使用。如图9所示,显示的3个串联的最小单元的移位寄存器,第一个单元最后的输出端口作为第二单元的输入,而第二个单元的最后一个输出作为第三个单元的输入,依次类推。图中所示总共有12个数据输出端口。
每完成一次数据的移位后,多路乘法累加器模块开始对输入的光子数进行相乘与累加操作。具体的电路设计如图10。该电路有5个输入,iCLK50M为50M的时钟输入,iRST为复位输入线,iEn为使能信号,高电平有效,iCLR为清零信号,低电平有效。iDataa[7..0]为图9中第一个移位寄存器的数据,iDatab[7..0]为需要计算的通道所对应的移位寄存器的数据。该电路有4个输出,分别为Result1[23..0],Result2[23..0],Result3[23..0],Result4[23..0],代表各个通道对的相关运算结果。乘法累加器中的乘法运算使用了FPGA里嵌入的高速硬件乘法器进行计算,节省了硬件资源。
多路相关运算模块完成各路的相关运算,其具体的工作流程如下所述。iCLK50M为50M的时钟输入,用来作为模块的运行时钟。iRST为低电平时,电路处于复位阶段,当变为高电平时,电路正常工作。iEn为高电平时,乘法累加器使能,下降沿时将各路的光子数和相关数据传送到计算机通信模块。iCLR为模块清零信号,低电平时,多路乘法累加器清零。iDataCLK为多路光子计数模块的光子数输出时钟,上升沿时将数据锁存输入到多路相关运算模块。MacEn为控制不同探测点运算的输入信号,用于控制不同探测点的乘法累加器的计算。高电平时,多路乘法累加器进行相关运算。
(4)计算机接口模块
计算机通信接口模块完成FPGA中相关器与计算机的通信,在FPGA内建立串口数据接收单元和串口数据发送单元。接收单元接收计算机发送来的指令,发送单元将相关运算的结果数据发送到计算机。
计算机接口模块完成计算机与相关器的通信,由接收单元RxdALL和发送单元TXDALL组成。RxdALL,如图11所示,有3个输入端,3个输出端。iRX为数据的接收端,iCLK50M为50M时钟输入,iRST为复位信号。oEn为接收到数据有效输出线,高电平有效。oData[409..0][7..0]为接收数据缓冲,oRxdNum[9..0]指示收到的数据个数。TXDALL,如图12所示,有6个输入端,2个输出端。iCLK50M为50M时钟输入,iRST为复位信号,iEn为相关数据传输开始控制信号,高电平有效。iStart为传输控制信号开始控制信号,高电平有效,iTxdNum[9..0]为传输数据个数输入参数,iData[3200..0][7..0]为传输数据缓冲。oDone为传输控制完成信号,高电平有效。oTX为数据输出线。
如上即可较好的实现本发明并取得所述的技术效果。
Claims (3)
1.一种基于现场可编程门阵列的多路复用光子相关器,其特征在于包括:
系统同步运行模块,固化在FPGA内,实现多路光子计数同步、多路相关运算同步、相关结果输出同步和系统复位同步;
多路光子计数模块,固化在FPGA内,按设定的时序,对多路复用的光子信号进行计数,并锁存输出,送入下述多路相关运算模块;
多路相关运算模块,固化在FPGA内,能实时对多路光子计数模块传来的多路复用的光子信号数据进行自相关运算,分别得到各路信号的自相关曲线,并锁存输出;
计算机接口模块,固化在FPGA内,通过接口电路与计算机通信,实现相关运算结果的数据输出;所述系统同步运行模块的输入端与时钟晶振连接并输出其他各个模块的同步信号,所述其他各个模块的同步信号包括多路光子计数同步信号、多路相关运算同步信号、相关结果输出同步信号和系统复位同步信号;所述多路光子计数模块接收的信号包括时钟晶振信号、多路光子脉冲,以及系统复位同步信号中的清零信号iCLR,同时所述多路光子计数模块的采样时间可调;所述多路相关运算模块由多路移位寄存器与多路乘法累加器构成,可实现多路信号的同时自相关运算;所述计算机接口模块由串口接收单元和发送单元构成,可实现多路复用光子相关器与上位机的通信;由多路光子计数模块产生的多路复用的光子信号,包括复用路数、最小采样时间、相关运算时间参数;多路复用光子相关器与计算机连接,所述复用路数、最小采样时间、相关运算时间参数通过计算机接口模块进行设定。
2.根据权利要求1所述的基于现场可编程门阵列的多路复用光子相关器,其特征在于所述多路复用光子相关器的多路光子计数器模块通过单个端口输入光子信号。
3.根据权利要求1所述的基于现场可编程门阵列的多路复用光子相关器,其特征在于所述多路复用光子相关器既能通过单个端口输入多路光子信号,也能通过多端口输入各路光子信号。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510166262.XA CN104792670B (zh) | 2015-04-09 | 2015-04-09 | 一种基于现场可编程门阵列的多路复用光子相关器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510166262.XA CN104792670B (zh) | 2015-04-09 | 2015-04-09 | 一种基于现场可编程门阵列的多路复用光子相关器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104792670A CN104792670A (zh) | 2015-07-22 |
CN104792670B true CN104792670B (zh) | 2018-04-03 |
Family
ID=53557660
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510166262.XA Active CN104792670B (zh) | 2015-04-09 | 2015-04-09 | 一种基于现场可编程门阵列的多路复用光子相关器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104792670B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1460176A (zh) * | 2001-03-30 | 2003-12-03 | 大塚电子株式会社 | 光子相关器 |
CN201589663U (zh) * | 2009-12-08 | 2010-09-22 | 华南师范大学 | 基于现场可编程门阵列(fpga)的光子相关器 |
CN102313604A (zh) * | 2011-07-12 | 2012-01-11 | 华南师范大学 | 基于cpld和fpga的自适应光子相关器 |
CN102798582A (zh) * | 2012-05-22 | 2012-11-28 | 山东理工大学 | 基于dsp环形缓冲区的比例光子相关器 |
CN102798589A (zh) * | 2012-05-22 | 2012-11-28 | 山东理工大学 | 一种大动态范围高速光子相关器 |
-
2015
- 2015-04-09 CN CN201510166262.XA patent/CN104792670B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1460176A (zh) * | 2001-03-30 | 2003-12-03 | 大塚电子株式会社 | 光子相关器 |
CN201589663U (zh) * | 2009-12-08 | 2010-09-22 | 华南师范大学 | 基于现场可编程门阵列(fpga)的光子相关器 |
CN102313604A (zh) * | 2011-07-12 | 2012-01-11 | 华南师范大学 | 基于cpld和fpga的自适应光子相关器 |
CN102798582A (zh) * | 2012-05-22 | 2012-11-28 | 山东理工大学 | 基于dsp环形缓冲区的比例光子相关器 |
CN102798589A (zh) * | 2012-05-22 | 2012-11-28 | 山东理工大学 | 一种大动态范围高速光子相关器 |
Non-Patent Citations (2)
Title |
---|
Flexible digital correlator;W. Matley等;《ELECTRONIC CIRCUITS AND SYSTEMS》;19790531;第3卷(第3期);第129-133页 * |
利用光子相关光谱研究蛋白分子相互作用;李绍新 等;《光谱实验室》;20050531;第22卷(第3期);第467-469页 * |
Also Published As
Publication number | Publication date |
---|---|
CN104792670A (zh) | 2015-07-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104502684B (zh) | 一种全数字化峰值到达时刻鉴别方法 | |
CN103199870B (zh) | 一种触发点快速定位装置 | |
CN104615909A (zh) | 基于FPGA的Izhikevich神经元网络同步放电仿真平台 | |
CN202362380U (zh) | 一种多功能高精度数字频率计 | |
CN103837741A (zh) | 基于fpga的等精度频率测试系统及其设计方法 | |
CN103092060A (zh) | 基于fpga的时间间隔测量系统与测量方法 | |
CN105095604B (zh) | 一种考虑距离与时钟的时序预算方法 | |
CN102928677A (zh) | 一种纳米级脉冲信号采集方法 | |
CN105116318B (zh) | 一种逻辑分析仪中实现毛刺检测的方法 | |
CN103176059B (zh) | 一种测量脉冲宽度的方法、装置和频率计 | |
CN106227026A (zh) | 一种双延迟内插法的时间间隔计数器 | |
CN104792670B (zh) | 一种基于现场可编程门阵列的多路复用光子相关器 | |
CN203132961U (zh) | 基于Virtex-5系列FPGA的纳米粒度测量系统 | |
CN101866165B (zh) | 基于现场可编程门阵列的回波飞行时间测量方法 | |
CN105868026A (zh) | 一种计算序列平均值的方法和装置 | |
CN102033032A (zh) | 用于光子相关纳米粒度仪的数字相关器 | |
CN203929885U (zh) | 基于fpga的等精度频率测试系统 | |
CN202720273U (zh) | 高精度相位差检测装置 | |
CN104298150B (zh) | 一种基于fpga专用逻辑资源的tdc实现方法及其装置 | |
CN201876405U (zh) | 用于光子相关纳米粒度仪的数字相关器 | |
CN102313604B (zh) | 基于cpld和fpga的自适应光子相关器 | |
CN103376397B (zh) | 一种异步电路的检测系统 | |
CN201589663U (zh) | 基于现场可编程门阵列(fpga)的光子相关器 | |
CN106443692A (zh) | 一种精确测量跳变沿到达时刻的方法和装置 | |
CN203191708U (zh) | 一种精密时间间隔测量仪 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
EXSB | Decision made by sipo to initiate substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20211201 Address after: 511500 No. 02, floor t0218, industrial building, Tian'an Zhigu science and Technology Industrial Park, No. 18, Chuangxing Avenue, high tech Industrial Development Zone, Qingyuan City, Guangdong Province Patentee after: Qingyuan Huaao Photoelectric Instrument Co.,Ltd. Address before: 510006 No. 378 West Ring Road, Guangzhou University Town, Panyu District, Guangzhou City, Guangdong Province Patentee before: SOUTH CHINA NORMAL University |