智汇工业-智慧工业、智能制造及工业智能、工业互联门户网站,专业的工业“互联网+”传媒

SPB嵌入式音頻處理系統設計

來源:網絡

點擊:1019

A+ A-

所屬頻道:新聞中心

關鍵詞: 嵌入式音頻,SPB

      FPGA嵌入式設計中,常通過軟件編程的方式來訪問或者控制某些外圍設備。電路設計軟件Altium Designer的軟件平臺構建器(SPB)是一個包含了用于創建復雜軟件系統所需的所有驅動和服務程序的軟件構架。SPB中的軟件IP模塊可以屏蔽底層細節,為FPGA嵌入式設計的快速開發提供便利,提高研發效率。介紹了基于SPB的FPGA嵌入式設計關鍵技術,并在智能開發平臺NanoBoard 3000上實現了基于SPB的嵌入式音頻處理系統設計。

      1引言

      FPGA(Field Programmable Gate Array)現場可編程門陣列,是在PAL,GAL,PLD基礎上進一步發展的,作為專用集成電路(ASIC)領域中的一種半定制電路,FPGA既解決了定制的電路的不足,又克服了原有可編程器件門電路數有限的缺點。使用FPGA來開發數字電路,可以大大縮短設計時間。從簡單的與非門電路到高性能的CPU,FPGA能完成所有的數字器件。

      2軟件平臺構建器

      設計FPGA嵌入式系統時,常需要通過軟件編程的方式訪問外圍設備,如LED.音頻接口。觸摸屏等。但在編程時需要熟悉相關外圍設備的工作狀況,包括設備工作時所需的設備寄存器。設備特定的命令。使用的通信協議及需要處理的中斷等。AD軟件的軟件平臺構建器(SPB)為這些特定的外圍設備提供了配置數據和驅動等相關的底層模塊(軟件IP模塊),提供了訪問外圍設備的應用編程接口(API)。

      在AD軟件下進行嵌入式系統設計時,SPB的使用是通過軟件平臺文件(SwPlatform)實現的。SPB是一個圖形化的用戶界面,可以自行讀取FPGA設計,為設計中的外圍設備導入合適的底層模塊,并以此為基礎添加更多的高層IP模塊到軟件平臺文件中。具體添加何種IP模塊,取決于FPGA嵌入式設計中需要訪問哪些外圍設備。訪問外圍設備時,可以使用SPB提供的多個IP模塊。較底層的IP模塊可以訪問特定的存儲設備,如硬盤。SD卡。RAM驅動器,較高層的IP模塊則更抽象也更獨立于硬件。

      軟件平臺文件(SwPlatform)是在SPB中,從一系列提供的元器件中選擇組合起來的軟件層。軟件平臺文件使得應用程序通過一組標準化的服務來利用硬件,如存儲服務和網絡服務。軟件平臺文件的目的其實就是使硬件設備通過抽象和通用的軟件接口,來為應用程序提供外圍設備的應用編程接口(API)。軟件平臺中的設備堆棧(Device Stacks)由三種類型的模塊構成,分別是硬件包裝(Wrapper)。驅動(Driver)和服務程序(Con-text)。通常從底而上,從最底層的與原理圖設計上特定硬件設備相關的模塊開始構建設備堆棧。在此之上,可以堆積較高層次的模塊,提供更通用的訪問外圍設備的功能函數。設備堆棧的底部是硬件包裝(Wrapper),然后是驅動(Driver),最后是服務程序(Context)。堆棧每往上一層,模塊對硬件的抽象層面越高。設備堆棧層的功能描述如表1所示。

    SPB嵌入式音頻處理系統設計

      SPB中的軟件服務列表(Software Service)是一組應用程序可以使用的類型。定義。結構和功能函數。軟件服務包含用于訪問SD卡。IDE存儲設備。CF卡和閃存上的文件的存儲服務;用于提供以太網訪問的網絡服務;提供符合POSIX規范的多線程功能的核心服務;允許快速構造現代圖形界面的GUI服務;用于實現音頻和視頻功能的多媒體服務。用于中斷管理和軟件定時管理的系統服務總是出現在軟件平臺中,并且與特定設備無關。每個不同的軟件模塊都包含完整的API參考信息。通過API Reference可以訪問API參考信息,堆棧中的每一層都會有詳細的該層上可用函數的描述。通過Header Files可以查看任意驅動或者服務程序的頭2嵌入式音頻處理系統設計2.1 OpenBus系統設計。

      嵌入式設計時,在處理外圍設備與處理器的連接關系時,可以采用AD軟件中的開放總線(OpenBus系統)來完成,這樣連接過程將被大大簡化。“OpenBus系統”是一個描述一種使用普通總線實現整個系統內邏輯功能性“模塊”連接的術語[3].在OpenBus系統文檔中,打開OpenBus Palette面板,選擇并放置組成系統所需的器件。OpenBus Palette面板中用于FPGA設計的器件,按照功能分類有Connectors(連接器)。Processors(處理器)。Memories(存儲器)。Peripherals(外圍設備)等。每個OpenBus器件必須正確配置后才能使用。這種Open-Bus系統的設計方法與傳統的將處理器和外圍電路作為元件放置在電路板上不同,它移除了所有低級別的走線和互連細節,能夠快速地構建系統。

      在本文的嵌入式音頻處理系統中,通過訪問NB3000開發板上的高保真音頻接口獲取音頻流信號。在設計OpenBus主處理器系統中,分別選擇并放置微處理器(32– bit RISC Processor TSK3000A)。連接件(Interconnect)。I2S音頻流控制器(Audio Streaming Control-ler)。SPI控制器(SPI Controller)和SRAM控制器(SRAMController)等OpenBus器件,并連線如圖1所示。同時,對OpenBus器件進行參數配置。將SPI控制器的數據發送大小(Data Transfer Size)參數配置為32.將I2S音頻流控制器的數據緩存(I2S Hardware Buffer)參數配置為4k samples,將I2S設置為中斷號INT_I1.

    SPB嵌入式音頻處理系統設計

      圖1 OpenBus系統設計

      通常情況下,任何使用OpenBus系統的FPGA設計都要設計放置接口電路的頂層原理圖。圖1的Open-Bus系統文件為32位處理器TSK3000A和I/O接口邏輯獲得了音頻流數據,包含了FPGA設計中的主處理器系統。約束文件將原理圖頂層的端口連接到目標FPGA器件的實際物理管腳。約束文件中不但包含端口到管腳的映射,還包含如時鐘分配。目標器件等其他相關的設計規范。

      頂層原理圖通過約束文件,將下載到FPGA中的嵌入式系統設計與FPGA器件的物理管腳連接起來。頂層原理圖設計中,音頻流控制器I2S與音頻編解碼器(AUDIO_CODEC)相連,SPI控制器與音頻編解碼器控制器CS4270(AUDIO_CODEC_CTRL)相連,如圖2所示。

    SPB嵌入式音頻處理系統設計

      圖2 頂層原理圖設計

      2.1軟件平臺文件設計

      在SPB基礎上搭建訪問NB 3000開發板的音頻接口,并對音頻流數據進行處理的軟件平臺文件(SwPlat-form),如圖3所示。

    SPB嵌入式音頻處理系統設計

      圖3 軟件平臺構建器搭建的軟件框圖

      NB 3000開發板上的音頻編解碼器為CS4270,因此圖3中選擇CS4270 Audio Codec Driver模塊,不需要再自行編寫音頻編解碼器的驅動代碼。設計采用SPI作為配置和控制,I2S用來傳輸數字音頻數據流。因此軟件平臺文件的底層設計選擇了I2S Master Controller和SPI Master Controller模塊。中間層設計選擇了I2SDriver.SPI Driver和CS4270 Audio Codec模塊。軟件平臺文件使硬件外圍設備的訪問變得容易,底層模塊為特定的外圍設備提供了配置數據和驅動代碼。設計軟件平臺文件時,選擇什么樣的模塊,取決于設計中需要訪問哪些外圍設備。

      2.2嵌入式代碼設計

      FPGA嵌入式系統設計中,嵌入式工程是“嵌在”微處理器中的。嵌入式代碼就是在軟件平臺構建器上搭建的軟件平臺的基礎上完成的軟件編程。嵌入式工程中的軟件代碼,主要完成音頻數據流的獲取。音頻數據流的處理和將處理好的音頻數據流送到NB 3000開發板的喇叭上。主要程序代碼如下:

    SPB嵌入式音頻處理系統設計

    SPB嵌入式音頻處理系統設計

    SPB嵌入式音頻處理系統設計

      3設計總結

      將嵌入式設計文件下載到智能開發平臺NanoBoard 3000上的FPGA器件后,利用音頻線將電腦或者音箱的音頻源送到NanoBoard 3000的音頻輸入接口,就能從喇叭上聽到處理后的音頻效果。設計過程表明,AD的軟件平臺構建器(SPB)為FPGA嵌入式設計訪問硬件電路相關外圍設備提供了底層軟件驅動提供了便利。通過搭建軟件平臺,調用IP模塊,避開了對于底層硬件的驅動程序的編寫,只要掌握高級C語言就可以方便地對外圍設備進行編程,簡化了嵌入式代碼的編寫,縮短了FPGA嵌入式設計的開發時間。

    (審核編輯: 小王子)

    聲明:除特別說明之外,新聞內容及圖片均來自網絡及各大主流媒體。版權歸原作者所有。如認為內容侵權,請聯系我們刪除。

    主站蜘蛛池模板: 浙江福茂德汽车滤清器有限公司 | 猪粪烘干机|小型鸡粪烘干机|猪粪烘干机价格|小型鸡粪烘干机价格 - 河南宏科重工干燥机设备生产厂家 | 网咖网址导航,网咖分类目录,网址目录,免费收录国内外、各行业优秀网站网站。 | 青岛除甲醛公司|青岛甲醛治理|青岛除甲醛|甲醛检测|光触媒除甲醛|装修除味除甲醛|新房除甲醛|青岛室内环境污染检测治理|青岛闪洁环保科技有限公司官网 | 宁波宝新不锈钢有限公司 | 南京叉车|电瓶叉车|电动叉车|电动堆高车|电动搬运车-南京诺嘉机械 | 曙海培训-ZEMAX培训射频培训无线电培训GMS培训EMC培训电磁兼容性培训Maxwell培训欧姆龙培训procast培训可靠性培训光学培训工业机器人培训NI培训Linux培训5G培训Hadoop培训CFD培训 | 西安真石漆_无机涂料厂家_无机涂料多少钱一个平方—陕西秦森环保科技有限公司 | 中式婚礼_汉服婚礼_传统婚礼_婚庆公司_云歌婚礼策划【官网】 | 智慧网格,智慧城市,智慧社区,精准扶贫,农村电商,网格化,网格化管理,智慧养老,北京瑞光极远数码科技有限公司 | 三机一体除湿干燥机,色母机,称重式拌料机,工业冻水机,中央集中供料-东莞市瑞达机械科技有限公司(瑞达国际) | 深圳车牌识别系统厂家_人脸识别厂家_通道闸厂家_车位引导系统_智慧社区管理系统_深圳市利普诺科技有限公司官网 | 太原门禁系统_太原车牌识别_山西人脸识别系统-山西元一智能科技有限公司 | 篮球场围网|网球场围网|球场围网|体育场围网_安平县炎煌丝网制品有限公司 | 深圳店铺装修-连锁店装修-深圳标榜装饰设计 | 四川方法数码科技有限公司| 廊坊纳科新材料技术有限公司--纳科新材料技术有限公司|廊坊纳科新材料|纳科新材料技术 | 企业认证-山东环鲁认证管理有限公司 | 水溶肥料-大量元素水溶肥-含氨基酸水溶肥料-高塔复合肥-水溶肥生产厂家-河南中黄特肥科技有限责任公司 | 康拓威技术(深圳)有限公司|Theia镜头代理商|安讯士AXIS摄像机|安讯士监控系统|博世BOSCH监控|博世会议系统|索尼SONY监控|松下PANASONIC监控|三星韩华SAMSUNG监控|霍尼韦尔Honeywell|海康|大华|华为监控|Theia无畸变镜头|AXIS监控|安讯视摄像机 | 中婴网,推动母婴产业健康·可持续发展,婴童网络专业传媒,母婴网,360孕婴童网,婴童品牌,婴儿用品品牌,婴儿用品加盟店,母婴用品加盟店 | 微孔板恒温振荡器-超声波探伤试块-微孔板迷你离心机-南京互川电子有限公司 | 太原重卡叔叔运输有限公司-山西太原大件运输、太原物流公司、太原货运物流、太原大件运输、太原货运信息、长治物流公司、长治大件运输、晋城物流公司、晋城大件运输、忻州大件运输、朔州大件运输、阳泉大件运输、大同大件运输、吕梁大件运输、临汾大件运输、运城大件运城 | 内蒙古发电机厂家_呼和浩特发电机租赁_销售_维修_回收_置换|盈弘发电设备有限责任公司 | 上饶市新达新包装材料有限公司| 深圳钢成培训专业从事,五轴培训,车铣复合培训,数控车床,CNC数控编程,模具编程 ,钣金机械与模具设计,powermill,mastercam,solidworks,ug,hypermill培训 | 双合金_注塑机_螺杆|炮筒|料管|料筒-广东海驰德塑胶机械有限公司 | 深圳汽车贴膜_深圳全车车身改色贴膜|UPPF隐形车衣官网 | 上海宽带安装-上海宽带办理-400电话-包月电话-靓号 | 双合金螺杆|注塑机螺杆|挤出机螺杆|双合金料管—东莞市精耐螺杆机械有限公司 | 聚四氟乙烯板,聚乙烯四氟板,防火布,廊坊王氏防火材料有限公司官网 | 重庆惠程信息科技股份有限公司 | 陕西硅酸钙板厂家_西安水泥压力板-陕西凯盛达建材科技有限公司 | 无锡大型数控龙门铣加工中心,精密焊接件制造,机械设备加工-无锡嘉迅机械科技有限公司 | 洒水车厂家、消防车、污水处理车厂家-程力专用汽车股份有限公司 洒水车|冷藏车|LED广告车|油罐车|道路救援车|垃圾车|程力专用汽车股份有限公司销售九分公司 | 苏州纸袋印刷_药袋、纸袋定制厂家_苏州嘉奕达印刷包装厂 | 智慧环保大数据云平台_车载走航式扬尘/恶臭/噪声污染源在线监测管控信息系统平台_环保土壤/环境监测系统云平台-奥斯恩智能科技 | 沈阳河山铸造有限公司 | 青州市泰航机械设备有限公司 | 蒸汽孔板流量计-法兰式孔板流量计-一体化标准孔板流量计-金湖中原仪表有限公司 | 山东万利精密机械制造有限公司-高速金属圆锯机,数控高速圆锯机,高速圆锯机生产厂家 |