- 相關(guān)推薦
基于IDE硬盤的大容量語音記錄儀
摘要:介紹一種基于IDE硬盤的大容量語音記錄儀的設(shè)計方法,重點闡述了大容量語音記錄儀的硬件和軟件設(shè)計。隨著我國經(jīng)濟(jì)建設(shè)的迅猛發(fā)展,公安、鐵路、民航、金融等部門對語音記錄的需求不斷增長。用戶經(jīng)常需要回放時間長達(dá)幾個月、甚至幾年的大容量語音記錄儀,而目前國內(nèi)可見到的語音記錄儀大多只能連續(xù)記錄幾百小時(即一個月左右)。而大容量的語音記錄儀一般是基于PC機,設(shè)備體積較大,使用不便。近年來作為數(shù)據(jù)存儲介質(zhì)的硬盤,以其容量大、接口智能化程度高、控制方便越來越受到人們的重視。充分發(fā)揮硬盤的優(yōu)勢,脫離系統(tǒng)主機,可以為用戶開發(fā)出超大存儲容量、性能可靠的語音記錄儀。
本文提出了采用單片機控制硬盤對語音數(shù)據(jù)進(jìn)行實時存儲的方案。其最大優(yōu)點是可記錄語音時間長達(dá)幾個月甚至幾年,并能達(dá)到較高的性能指標(biāo)。
甚至IDE硬盤的大容易語音記錄儀的特點:
(1) 以單片機為核心,采用PIO模式進(jìn)行硬盤的讀寫,可大大提高系統(tǒng)的性能價格比,使得語音記錄時間長達(dá)1500小時(6GB硬盤)。若換用更大容量硬盤,可實現(xiàn)更長語音記錄時間,達(dá)到連續(xù)工作幾個月甚至幾年的要求。
(2) 采用DSP芯片D6517E,其語音壓縮算法采用TRUESPEECH Triple Rate Coder,8kHz采樣頻率下語音壓縮速率為9.6、7.2或4.4kbps,MOS指標(biāo)可達(dá)到3.98。
(3) 采用大規(guī)?删幊踢壿嬈骷﨏PLD對系統(tǒng)數(shù)字邏輯電路進(jìn)行集成,提高了系統(tǒng)的穩(wěn)定性和可靠性,具有較好的通用性,可滿足多種場合的需要,不需改動任何硬件。
(4) 預(yù)留遠(yuǎn)程調(diào)度電話接口,可實現(xiàn)遠(yuǎn)程監(jiān)聽、查詢等功能。
(5) 由于采用4層PCB線路板設(shè)計、表貼工藝和超薄筆記本硬盤,使得基于IDE硬盤的大容量語音記錄儀體積如普通電話機大小,可實現(xiàn)對一路電話進(jìn)行高阻并聯(lián)錄音,并可在本機播放記錄語音和遠(yuǎn)程調(diào)度記錄語音。
圖1 D6571E的典型應(yīng)用電路
1 系統(tǒng)硬件設(shè)計
1.1 D6571E芯片
在本系統(tǒng)中,選擇DSP芯片D6571E,其語音壓縮算法采用TRUESPEECH Triple Rate Coder。由于該算法的實時運算需要22MIPS以上的運算速度,為此將DSP內(nèi)核和算法代碼集成在D6571E芯片內(nèi)。D6571E的典型應(yīng)用電路如圖1所示。
D6571E具有16位寬的總線,但也允許以分時方式使用8位總線,這時CPU須用HI/LO信號表示送到總線上的是高8位還是低8位;當(dāng)D6571E主動將數(shù)據(jù)送到總線上時,會發(fā)出ACK信號通知CPU讀取數(shù)據(jù)。HSTRD和HSTWR則是讀和寫的控制線。由于TRUE-SPEECH Triple Rate Coder算法按30ms分幀采樣,然后進(jìn)行分析壓縮,因此無論是讀取壓縮數(shù)據(jù)還是因送壓縮數(shù)據(jù),均必須在一幀內(nèi)完成,否則D6571E會自行進(jìn)入休眠狀態(tài)。向D6571E輸送語音數(shù)據(jù)的過程如下:首先送出解壓控制命令,然后接收一個回送狀態(tài)字,狀態(tài)字中包含了當(dāng)前幀所需要的字節(jié)數(shù),CPU就連續(xù)送出規(guī)定數(shù)目的數(shù)據(jù),待一幀處理完畢后,D6571E會繼續(xù)送出狀態(tài)字,如此循環(huán)就可連續(xù)回放語音了。而利用D6571E進(jìn)行語音壓縮的數(shù)據(jù)處理過程正好相反,狀態(tài)字中包含的是當(dāng)前幀壓縮所得到的字節(jié)數(shù),CPU應(yīng)連接接收規(guī)定數(shù)目的數(shù)據(jù)。
D6571E芯片具備工業(yè)標(biāo)準(zhǔn)的編解碼器接口,可直接與串行PCM接口的音頻編解碼芯片相連,如美國國家半導(dǎo)體的TP3054(μ律)、TP3057(A律)等。本系統(tǒng)設(shè)計中音頻編解碼接口芯片采用了TP3057。TP3057工作所需的同步脈沖、采樣時鐘、數(shù)據(jù)信號等只需與D6571E的4根控制線相連即可得到。
由于D6571E的控制命令很豐富,在大容量語音記錄儀的設(shè)計中,筆者利用D6571E實現(xiàn)數(shù)字音量控制、自動增益控制、變速回放、雙音頻信號產(chǎn)生和鑒別、來電顯示等功能,省去了不少功能芯片、線路板面積,使昨最終設(shè)計成型的大容量語音記錄儀體積如普通電話機大小。
1.2 IDE硬盤的控制
利用單片機控制現(xiàn)有的硬盤,可極大地提高系統(tǒng)的性能價格比,因此本系統(tǒng)采用單片機控制硬盤進(jìn)行語音數(shù)據(jù)的存儲。
圖2 DK23AA-60硬盤引腳及定義
IDE接口的硬盤驅(qū)動器提供了兩種數(shù)據(jù)傳輸模式:PIO模式和DMA模式。由于PIO模式控制相對容易,提供了一種編程控制輸入/輸出的快速傳輸方法。該模式采用高速的數(shù)據(jù)塊I/O,以扇區(qū)為單位,用中斷請求方式與CPU進(jìn)行批量數(shù)據(jù)交換。在扇區(qū)讀寫操作時,一次按16位長度通過內(nèi)部的高速PIO數(shù)據(jù)寄存器傳輸。通常情況下,數(shù)據(jù)傳輸以扇區(qū)為單位,每傳輸一扇區(qū)數(shù)據(jù)產(chǎn)生一個中斷。由于本系統(tǒng)語音壓縮數(shù)據(jù)的最大速率只有9.6kbps,而相關(guān)資料報道采用PIO寫盤速度可以達(dá)到192kbps,完全可以滿足本系統(tǒng)的要求。
本系統(tǒng)采用Hitachi(日立)公司DK23AA-60型號的筆記本硬盤。它具有6GB的存儲容量,厚度僅有9.6mm,它的引腳及定義如圖2所示。
IDE接口是一種任務(wù)寄存器結(jié)構(gòu)的接口,所有輸入輸出操作均通過對相應(yīng)寄存器的讀寫完成。IDE硬盤驅(qū)動器中的寄存器及地址分配見表1。表2為狀態(tài)寄存器,它反映了硬盤驅(qū)動器執(zhí)行命令后的狀態(tài)。
表1 IDE硬盤驅(qū)動器中的寄存器及地址分配
表02 狀態(tài)寄存器
D7D6D5D4D3D2D1D【基于IDE硬盤的大容量語音記錄儀】相關(guān)文章:
基于ISD語音芯片的報警系統(tǒng)03-07
基于閃存的星載大容量存儲器的研究和實現(xiàn)03-18
基于DSP的語音處理系統(tǒng)的設(shè)計11-22