亚洲精品影院一区二区-亚洲精品永久一区-亚洲精品中文一区不卡-亚洲精品中文字幕久久久久久-国产亚洲精品aaa大片-国产亚洲精品成人a在线

您好,歡迎光臨電子應用網![登錄] [免費注冊] 返回首頁 | | 網站地圖 | 反饋 | 收藏
在應用中實踐
在實踐中成長
  • 應用
  • 專題
  • 產品
  • 新聞
  • 展會
  • 活動
  • 招聘
當前位置:中國電子應用網 > 技術應用 > 正文

基于Microblaze軟核FSL總線的門光子計數器設計與實現[圖]

2011年11月30日17:25:25 本網站 我要評論(2)字號:T | T | T
關鍵字:應用 通信 Intel 
 

摘要:門光子計數器是量子光學實驗中單光子探測常用的數據采集設備,用于收集單光子探測器探測到的單個光子信號。由于不同的場合需要用到不同的計數模式,商用的計數器往往難以滿足具體的需求,或者造成采集效率低下。系統采用的是一種基于MicroBlaze系統FSL總線的可擴展計數器設計架構,該架構能夠靈活的添加不同的計數功能,并通過統一的FSL總線和Microblaze CPU與PC通信。在該架構的基礎上實現了針對量子單自旋調控實驗中常用的計數模式。系統所采用的設計和實現方式可以推廣到其他光子計數需求中,并具有較低的設計和生產成本。

0 引言

光學領域尤其是量子光學領域的實驗常常需要進行單個相干光子的探測用于實現實驗數據的采集。一般常用的配置是一個單光子探測器加上一個門光子計數器,其前端的單光子探測器用來收集光子信號,每探測到一個光子產生一個TTL脈沖,后端的門光子計數器用來記錄該TTL上升沿數目并且與PC等其他器件通信或者同步。APD的工作方式相對簡單,而門光子計數器則由于具體實驗需求不同而要求不同的工作方式,很難有一種通用的計數模式能夠滿足各種情況的需求。由于成本限制,功能固定的計數器往往因為沒有廣闊的市場而造成價格很高。另一方面,工業和科研界購買的商用計數器往往無法滿足自己的具體需求而導致工作效率低下,甚至無法滿足要求。

所謂門光子計數器就是針對單自旋量子調控實驗研究中對單個光子探測的需求所研制的。單自旋量子調控是對晶體中的缺陷,如量子點和金剛石色心進行控制,其信號讀出一般是通過自旋發生的單個光子進行探測實現的。在此類實驗中常用的技術有三種:門光子計數、定時計數和相關函數測量。文中所述的系統建立了一種可擴展的通信和控制架構能夠添加不同方式的計數功能。

1 系統結構設計

整體系統結構示意圖如圖1所示,通過PC機的以太網口實現與計數系統的數據通訊與命令傳輸,PC機將工作模式選擇等命令通過網口向系統發送,而系統將在不同模式下的計數值及計數狀態等數據通過網口發送到PC機,交由PC機對數據進行處理。系統的主芯片采用Xilinx的SPARTAN 3E系列的XC3S500E。系統的光子計數輸入由兩個BNC接口引入,這兩個接口可以由FPGA進行配置,使光子計數器以不同的模式進行工作。系統的固件燒寫在FLASH芯片內,SDRAM提供了大容量存儲空間,用于運行時裝載Microblaze軟核代碼、計數應用代碼以及存儲計數的數據。

基于Microblaze軟核FSL總線的門光子計數器設計與實現

系統以FPGA為處理中心,實現各種工作模式,其功能框圖如圖2所示。功能模塊主要包括軟核Microblaze、對外部存儲器的接口MPMC、以及需要設計實現的Counterpulse IP核。在Counterpulse IP核與處理器軟核之間,采用了FSL總線進行連接,實現由Microbalze對Counterpu-lse核的配置,以及由Counterpulse核到Microblaze的數據傳輸。

基于Microblaze軟核FSL總線的門光子計數器設計與實現

系統工作時,由Microblaze軟核通過網口接收由PC機發送來的命令,根據命令,通過一路FSL總線對光子計數IP核進行工作模式的選擇和配置。計數IP核對外部計數源進行計數,計數的結果和狀態數據通過另一路FSL總線發送到Microblaze軟核,由Microblaze軟核將該數據在DDRRAM內進行緩沖,并通過網口將這些數據較終發送給PC機,由PC機進行分析處理。

系統有三種工作模式:模式一:使能計數,使能信號有效時(高電平有效),對光子計數輸入的計數脈沖信號進行計數;模式二:定周期計數,根據設定的計數周期,對光子計數輸入的計數脈沖信號進行計數;模式三:啟動和停止信號分開的計時,根據輸入的計數啟動信號和計數停止信號(均為上升沿有效),進行以系統基頻為基準的計時,以實現函數測量。

2 系統設計實現

2.1 系統硬件框圖

計數系統硬件結構如圖3所示,由FPGA、64MB的DDR存儲器、16MB的FLASH存儲器和10M/100M以太物理層(PHY)等組成。系統工作時,由PC機通過網口發送命令到FPGA,FPGA內部的Microblaze軟核配置計數IP核的工作模式,由FPGA通過兩路BNC接口對外部計數源進行計數,并將數據在DDRRAM內進行緩沖,較終將這些數據通過網口發送到PC機。

基于Microblaze軟核FSL總線的門光子計數器設計與實現

2.2 主要元器件介紹

2.2.1 FPGA芯片及其配置芯片選用

FPGA選用Xilinx公司的Spartan-3E系列XC3S500E,采用先進的90nm制造工藝生產,其器件密度為50萬門。Spartan3系列的FPGA是Xilinx公司專門針對大容量、低成本需求的電子設計而開發的,可支持多種電平的I/O標準;含有豐富的邏輯資源。XC3S500E具有360kbits的塊RAM、73kbits的分布式RAM、10476個邏輯單元、20個18×18的乘法器和4個DCM時鐘管理模塊。

FPGA的配置芯片選用的是Xilinx公司的在系統可編程配置芯片XCF04S,該芯片可為XC3S500E提供易于使用、成本低且可重復編程的配置數據存貯方法,該芯片支持IEEE1149.1標準的JTAG邊界掃描測試和編程。在本系統設計中,XCF04S主要存放用于引導Microblaze軟核及應用程序的引導代碼。

2.2.2 存儲芯片

系統使用的RAM是Micron Technology公司的DDRSDRAM(MT46V32M16),是一片容量為512Mbit(32Mx16)的16位總線寬度存儲芯片,用于上電后加載Microblaze軟核代碼和應用程序代碼,以及對計數數據進行緩沖。FLASH芯片是Intel StrataFlash parallel NORFlash,型號為28F256J3,存儲密度為256Mbit,在本系統中用于保存Microblaze軟核代碼和應用程序代碼。

3 功能設計實現

3.1 基于EDK的FPGA軟核Microblaze的應用設計實現

系統設計工具主要采用Xilinx公司的嵌入式開發套件EDK,它是用于設計嵌入式處理系統的集成解決方案。它包括搭建硬件平臺的XPS和進行軟件配置的SDK。

Microblaze是Xilinx公司推出的32位軟處理器核,支持CoreConnect總線的標準外設集合。MicroBlaze處理器運行在150MHz時鐘下,可提供125 D-MIPS的性能,這種高效的軟核在本系統中可用于實現處理器功能,實現對計數IP核的配置,以及支撐Xilinx的clockgenerator、Et-hernet等IP核。系統對計數器的實現采用Verilog語言將計數功能編寫為IP核,將其通過FSL總線掛在Microblaze軟核上,以實現計數功能。

3.2 通訊協議

Microblaze到計數IP核之間的通訊數據定義如下:

基于Microblaze軟核FSL總線的門光子計數器設計與實現

計數IP核到Microblaze之間的通訊數據定義如下:

基于Microblaze軟核FSL總線的門光子計數器設計與實現

3.3 計數IP核的設計實現

3.3.1 計數IP核的結構

計數IP核采用verilog硬件語言編寫,其結構如圖6所示,頂層文件counterpulse3對接口進行配置,并根據FSL總線上的命令參數選擇工作模式,pulsecount1、pulsecount2和pulsecount3分別是3種工作模式的代碼實現,fsloprt是與FSL進行接口的代碼。

基于Microblaze軟核FSL總線的門光子計數器設計與實現

3.3.2 與FSL總線接口

fslopn.v的代碼完成與FSL總線接口功能。FSL總線是單向點對點的通道,它用于完成任意FPGA中兩個模塊的快速通訊。FSL總線是基于FIFO的,基于非共享的無仲裁通信機制,它的深度是可以設置的,較大可以到8k,具備高速的通信性能,其結構如圖7所示。

基于Microblaze軟核FSL總線的門光子計數器設計與實現

由于FSL總線是單向的,所以系統中采用了兩條FSL總線,實現Mieroblaze到計數IP核之間的雙向通訊,計數IP核在面對兩條FSL總線時,擔當的分別是MASTER(主)和SLAVE(從)兩種角色。因此,fsloprt.v的代碼應該同時滿足與FSL總線接口的讀和寫時序。讀寫時序如圖8和圖9所示。

基于Microblaze軟核FSL總線的門光子計數器設計與實現

3.4 計數IP核和FSL總線的在EDK中的連接實現

為了能使用FSL總線,首先應該在XPS圖形界面中對Microblaze進行配置,在Buses中將Number of FSL Links設置為1。再在IP Catalog中將FSL總線加入到工程中兩次。

在計數IP核編寫后并綜合通過后,將該IP核導入到XPS工程中。

在XPS中,分別對Microblaze和計數IP核的MFSL和SFSL進行連接,將Microblaze的MFSL端連接到計數IP核的SFSL端,反之將計數IP核的MFSL端連接到Microblaze的SFSL端。并在system.mhs中

網友評論:已有2條評論 點擊查看
登錄 (請登錄發言,并遵守相關規定)
如果您對新聞頻道有任何意見或建議,請到交流平臺反饋。【反饋意見】
關于我們 | 聯系我們 | 本站動態 | 廣告服務 | 歡迎投稿 | 友情鏈接 | 法律聲明
Copyright (c) 2008-2025 01ea.com.All rights reserved.
電子應用網 京ICP備12009123號-2 京公網安備110105003345號