Ⅰ pcm 編譯碼晶元中的用到哪些濾波器這些濾波器的帶寬設置是如何考慮 的
1. 點到點PCM多路電話通信原理
脈沖編碼調制(PCM)技術與增量調制(ΔM)技術已經在數字通信系統中得到廣泛應用。當信道雜訊比較小時一般用PCM,否則一般用ΔM。目前速率在155MB以下的准同步數字系列(PDH)中,國際上存在A解和μ律兩種PCM編解碼標准系列,在155MB以上的同步數字系列(SDH)中,將這兩個系列統一起來,在同一個等級上兩個系列的碼速率相同。而ΔM在國際上無統一標准,但它在通信環境比較惡劣時顯示了巨大的優越性。
點到點PCM多路電話通信原理可用圖9-1表示。對於基帶通信系統,廣義信道包括傳輸媒質、收濾波器、發濾波器等。對於頻帶系統,廣義信道包括傳輸媒質、調制器、解調器、發濾波器、收濾波器等。
本實驗模塊可以傳輸兩路話音信號。採用TP3057編譯器,它包括了圖9-1中的收、發低通濾波器及PCM編解碼器。編碼器輸入信號可以是本實驗模塊內部產生的正弦信號,也可以是外部信號源的正弦信號或電話信號。本實驗模塊中不含電話機和混合電路,廣義信道是理想的,即將復接器輸出的PCM信號直接送給分接器。
2. PCM編解碼模塊原理
本模塊的原理方框圖圖9-2所示,電原理圖如圖9-3所示(見附錄),模塊內部使用+5V和-5V電壓,其中-5V電壓由-12V電源經7905變換得到。
圖9-2 PCM編解碼原理方框圖
該模塊上有以下測試點和輸入點:
• BS PCM基群時鍾信號(位同步信號)測試點
• SL0 PCM基群第0個時隙同步信號
• SLA 信號A的抽樣信號及時隙同步信號測試點
• SLB 信號B的抽樣信號及時隙同步信號測試點
• SRB 信號B解碼輸出信號測試點
• STA 輸入到編碼器A的信號測試點
• SRA 信號A解碼輸出信號測試點
• STB 輸入到編碼器B的信號測試點
• PCM PCM基群信號測試點
• PCM-A 信號A編碼結果測試點
• PCM-B 信號B編碼結果測試點
• STA-IN 外部音頻信號A輸入點
• STB-IN 外部音頻信號B輸入點
本模塊上有三個開關K5、K6和K8,K5、K6用來選擇兩個編碼器的輸入信號,開關手柄處於左邊(STA-IN、STB-IN)時選擇外部信號、處於右邊(STA-S、STB-S)時選擇模塊內部音頻正弦信號。K8用來選擇SLB信號為時隙同步信號SL1、SL2、SL5、SL7中的某一個。
圖9-2各單元與電路板上元器件之間的對應關系如下:
•晶振 U75:非門74LS04;CRY1:4096KHz晶體
•分頻器1 U78:A:U78:D:觸發器74LS74;U79:計數器74LS193
•分頻器2 U80:計數器74LS193;U78:B:U78:D:觸發器74LS74
•抽樣信號產生器 U81:單穩74LS123;U76:移位寄存器74LS164
•PCM編解碼器A U82:PCM編解碼集成電路TP3057(CD22357)
•PCM編解碼器B U83:PCM編解碼集成電路TP3057(CD22357)
•幀同步信號產生器 U77:8位數據產生器74HC151;U86:A:與門7408
•正弦信號源A U87:運放UA741
•正弦信號源B U88:運放UA741
•復接器 U85:或門74LS32
晶振、分頻器1、分頻器2及抽樣信號(時隙同步信號)產生器構成一個定時器,為兩個PCM編解碼器提供2.048MHz的時鍾信號和8KHz的時隙同步信號。在實際通信系統中,解碼器的時鍾信號(即位同步信號)及時隙同步信號(即幀同步信號)應從接收到的數據流中提取,方法如實驗五及實驗六所述。此處將同步器產生的時鍾信號及時隙同步信號直接送給解碼器。
由於時鍾頻率為2.048MHz,抽樣信號頻率為8KHz,故PCM-A及PCM-B的碼速率都是2.048MB,一幀中有32個時隙,其中1個時隙為PCM編碼數據,另外31個時隙都是空時隙。
PCM信號碼速率也是2.048MB,一幀中的32個時隙中有29個是空時隙,第0時隙為幀同步碼(×1110010)時隙,第2時隙為信號A的時隙,第1(或第5、或第7 —由開關K8控制)時隙為信號B的時隙。
本實驗產生的PCM信號類似於PCM基群信號,但第16個時隙沒有信令信號,第0時隙中的信號與PCM基群的第0時隙的信號也不完全相同。
由於兩個PCM編解碼器用同一個時鍾信號,因而可以對它們進行同步復接(即不需要進行碼速調整)。又由於兩個編碼器輸出數據處於不同時隙,故可對PCM-A和PCM-B進行線或。本模塊中用或門74LS32對PCM-A、PCM-B及幀同步信號進行復接。在解碼之前,不需要對PCM進行分接處理,解碼器的時隙同步信號實際上起到了對信號分路的作用。
3. TP3057簡介
本模塊的核心器件是A律PCM編解碼集成電路TP3057,它是CMOS工藝製造的專用大規模集成電路,片內帶有輸出輸入話路濾波器,其引腳及內部框圖如圖9-4、圖9-5所示。引腳功能如下:
圖9-4 TP3057引腳圖
(1) V一 接-5V電源。
(2) GND 接地。
(3) VFRO 接收部分濾波器模擬信號輸出端。
(4) V+ 接+5V電源。
(5) FSR 接收部分幀同信號輸入端,此信號為8KHz脈沖序列。
(6) DR 接收部分PCM碼流輸入端。
(7) BCLKR/CLKSEL 接收部分位時鍾(同步)信號輸入端,此信號將PCM碼流在FSR上升沿後逐位移入DR端。位時鍾可以為64KHz到2.048MHz的任意頻率,或者輸入邏輯「1」或「0」電平器以選擇1.536MHz、1.544MHz或2.048MHz用作同步模式的主時鍾,此時發時鍾信號BCLKX同時作為發時鍾和收時鍾。
(8) MCLKR/PDN 接收部分主時鍾信號輸入端,此信號頻率必須為1.536MHz、1.544MHz或2.048MHz。可以和MCLKX非同步,但是同步工作時可達到最佳狀態。當此端接低電平時,所有的內部定時信號都選擇MCLKX信號,當此端接高電平時,器件處於省電狀態。
(9) MCLKX 發送部分主時鍾信號輸入端,此信號頻率必須為1.536MHz、1.544MHz或2.048MHz。可以和MCLKR非同步,但是同步工作時可達到最佳狀態。
(10) BCLKX 發送部分位時鍾輸入端,此信號將PCM碼流在FSX信號上升沿後逐位移出DX端,頻率可以為64KHz到2.04MHz的任意頻率,但必須與MCLKX同步。
圖9-5 TP3057內部方框圖
(11) DX 發送部分PCM碼流三態門輸出端。
(12) FSX 發送部分幀同步信號輸入端,此信號為8KHz脈沖序列。
(13) TSX 漏極開路輸出端,在編碼時隙輸出低電平。
(14) GSX 發送部分增益調整信號輸入端。
(15) VFXi- 發送部分放大器反向輸入端。
(16) VFXi+ 發送部分放大器正向輸入端。
TP3057由發送和接收兩部分組成,其功能簡述如下。
發送部分:
包括可調增益放大器、抗混淆濾波器、低通濾波器、高通濾波器、壓縮A/D轉換器。抗混淆濾波器對采樣頻率提供30dB以上的衰減從而避免了任何片外濾波器的加入。低通濾波器是5階的、時鍾頻率為128MHz。高通濾波器是3階的、時鍾頻率為32KHz。高通濾波器的輸出信號送給階梯波產生器(采樣頻率為8KHz)。階梯波產生器、逐次逼近寄存器(S•A•R)、比較器以及符號比特提取單元等4個部分共同組成一個壓縮式A/D轉換器。S•A•R輸出的並行碼經並/串轉換後成PCM信號。參考信號源提供各種精確的基準電壓,允許編碼輸入電壓最大幅度為5VP-P。
發幀同步信號FSX為采樣信號。每個采樣脈沖都使編碼器進行兩項工作:在8比特位同步信號BCLKX的作用下,將采樣值進行8位編碼並存入逐次逼近寄存器;將前一采樣值的編碼結果通過輸出端DX輸出。在8比特位同步信號以後,DX端處於高阻狀態。
接收部分:
包括擴張D/A轉換器和低通濾波器。低通濾波器符合AT&T D3/D4標准和CCITT建議。D/A轉換器由串/並變換、D/A寄存器組成、D/A階梯波形成等部分構成。在收幀同步脈沖FSR上升沿及其之後的8個位同步脈沖BCLKR作用下,8比特PCM數據進入接收數據寄存器(即D/A寄存器),D/A階梯波單元對8比特PCM數據進行D/A變換並保持變換後的信號形成階梯波信號。此信號被送到時鍾頻率為128KHz的開關電容低通濾波器,此低通濾波器對階梯波進行平滑濾波並對孔徑失真(sinx)/x進行補嘗。
在通信工程中,主要用動態范圍和頻率特性來說明PCM編解碼器的性能。
動態范圍的定義是解碼器輸出信噪比大於25dB時允許編碼器輸入信號幅度的變化范圍。PCM編解碼器的動態范圍應大於圖9-6所示的CCITT建議框架(樣板值)。
當編碼器輸入信號幅度超過其動態范圍時,出現過載雜訊,故編碼輸入信號幅度過大時量化信噪比急劇下降。TP3057編解碼系統不過載輸入信號的最大幅度為5VP-P。
由於採用對數壓擴技術,PCM編解碼系統可以改善小信號的量化信噪比,TP3057採用A律13折線對信號進行壓擴。當信號處於某一段落時,量化雜訊不變(因在此段落內對信號進行均勻量化),因此在同一段落內量化信噪比隨信號幅度減小而下降。13折線壓擴特性曲線將正負信號各分為8段,第1段信號最小,第8段信號最大。當信號處於第一、二段時,量化雜訊不隨信號幅度變化,因此當信號太小時,量化信噪比會小於25dB,這就是動態范圍的下限。TP3057編解碼系統動態范圍內的輸入信號最小幅度約為0.025Vp-p。
常用1KHz的正弦信號作為輸入信號來測量PCM編解碼器的動態范圍。
圖9-6 PCM編解碼系統動態范圍樣板值
語音信號的抽樣信號頻率為8KHz,為了不發生頻譜混疊,常將語音信號經截止頻率為3.4KHz的低通濾波器處理後再進行A/D處理。語音信號的最低頻率一般為300Hz。TP3057編碼器的低通濾波器和高通濾波器決定了編解碼系統的頻率特性,當輸入信號頻率超過這兩個濾波器的頻率范圍時,解碼輸出信號幅度迅速下降。這就是PCM編解碼系統頻率特性的含義。
四、實驗步驟
1. 熟悉PCM編解碼單元工作原理,開關K9接通8KHz(置為1000狀態),開關K8置為SL1(或SL5、SL7),開關K5、K6分別置於STA-S、STB-S端,接通實驗箱電源。
2. 用示波器觀察STA、STB,調節電位器R19(對應STA)、R20(對應STB),使正弦信號STA、STB波形不失真(峰峰值小於5V)。
3. 用示波器觀察PCM編碼輸出信號。
示波器CH1接SL0,(調整示波器掃描周期以顯示至少兩個SL0脈沖,從而可以觀察完整的一幀信號)CH2分別接SLA、PCM-A、SLB、PCM-B以及PCM,觀察編碼後的數據所處時隙位置與時隙同步信號的關系以及PCM信號的幀結構(注意:本實驗的幀結構中有29個時隙是空時隙,SL0、SLA及SLB的脈沖寬度等於一個時隙寬度)。
開關K8分別接通SL1、SL2、SL5、SL7,觀察PCM基群幀結構的變化情況。
4. 用示波器觀察PCM解碼輸出信號
示波器的CH1接STA,CH2接SRA,觀察這兩個信號波形是否相同(有相位差)。
5. 用示波器定性觀察PCM編解碼器的動態范圍。
開關K5置於STA-IN端,將低失真低頻信號發生器輸出的1KHz正弦信號從STA-IN輸入到TP3057(U82)編碼器。示波器的CH1接STA(編碼輸入),CH2接SRA(解碼輸出)。將信號幅度分別調至大於5VP-P、等於5VP-P,觀察過載和滿載時的解碼輸出波形。再將信號幅度分別衰減10dB、20dB、30dB、40dB、45dB、50dB,觀察解碼輸出波形(當衰減45dB以上時,解碼輸出信號波形上疊加有較明顯的雜訊)。
也可以用本模塊上的正弦信號源來觀察PCM編解碼系統的過載雜訊(只要將STA-S或STB-S信號幅度調至5VP-P以上即可),但必須用專門的信號源才能較方便地觀察到動態范圍。
Ⅱ 糾錯碼的基本原理和性能參數
糾錯碼能夠檢錯或糾錯,主要是靠碼字之間有較大的差別。這可用碼字之間的漢明距離d(x,y)來衡量。它的定義為碼字x與y之間的對應位取不同值的碼元個數。一種糾錯碼的最小距離d定義為該種碼中任兩個碼字之間的距離的最小值。一種碼要能發現e個錯誤,它的最小距離d應不小於e+1。若要能糾正t個錯誤,則d應不小於2t+1。一個碼字中非零碼元的個數,稱為此碼字的漢明重量。一種碼中非零碼字的重量的最小值,稱為該碼的最小重量。對線性碼來說,一種碼的最小重量與其最小距離在數值上是相等的。
在構造線性碼時,數字上是從n維空間中選一k維子空間,且使此子空間內各非零碼字的重量盡可能大。當構造循環碼時,可進一步將每一碼字看成一多項式,將整個碼看成是多項式環中的理想,這一理想是主理想,故可由生成多項式決定;而多項式完全可由它的根規定。這樣,就容易對碼進行構造和分析。這是BCH碼等循環碼構造的出發點。一般地說,構造一種碼時,均設法將它與某種代數結構相聯系,以便對它進行描述,進而推導它的性質,估計它的性能和給出它的解碼方法。若一種碼的碼長為n,碼字數為M,或信息位為h,以及最小距離為d,則可把此碼記作【n,M,d】碼。若此碼為線性碼,常簡記作(n,k)或(n,k,d)碼。人們還常用R=log2M/n表示碼的信息率或簡稱碼率,單位為比特/碼元。R越大,則每個碼元所攜帶的信息量越大,編碼效率越高。 糾錯碼實現中最復雜的部分是解碼。它是糾錯碼能否應用的關鍵。根據式(1),採用的碼長n越大,則誤碼率越小。但n越大,編解碼設備也越復雜,且延遲也越大。人們希望找到的解碼方法是:誤碼率隨碼長n的增加按指數規律下降;解碼的復雜程度隨碼長n的增加接近線性地增加;解碼的計算量則與碼長n基本無關。可惜,已經找到的碼能滿足這樣要求的很少。不過由於大規模集成電路的發展,即使應用比較復雜的但性能良好的碼,成本也並不太高。因此,糾錯碼的應用越來越廣泛。
糾錯碼傳輸的都是數字信號。這既可用硬體實現,也可用軟體實現。前者主要用各種數字電路,主要是採用大規模集成電路。軟體實現特別適合計算機通信網等場合。因為這時可以直接利用網中的計算機進行編碼和解碼,不需要另加專用設備。硬體實現的速度較高,比軟體可快幾個數量級。
在傳信率一定的情況下,如果採用糾錯碼提高可靠性,要求信道的傳輸率增加,帶寬加大。因此,糾錯碼主要用於功率受限制而帶寬較大的信道,如衛星、散射等系統中。糾錯碼還用在一些可靠性要求較高,但設備或器件的可靠性較差,而餘量較大的場合,如磁帶、磁碟和半導體存儲器等。
在分組碼的研究中,譜分析的方法受到人們的重視。糾同步錯誤碼、算術碼、不對稱碼、不等錯誤糾正碼等,也得到較多的研究。 分組碼是對信源待發的信息序列進行分組(每組K位)編碼,它的校驗位僅同本組的信息位有關。自20世紀50年代分組碼的理論獲得發展以來,分組碼在數字通信和數據存儲系統中已被廣泛應用。
分組碼的碼長n和碼字個數M是一個碼的主要構造參數。碼長為n的碼中所有碼字的位數均為n;若要用一個碼傳送k比特信息,則碼字的個數M必須滿足。典型的分組碼是由k位信息位和r位監督位組成的,這樣構成的碼一般稱為系統碼。
分組碼中應用最廣的線性分組碼。線性分組碼中的M個碼字之間具有一定線性約束關系,即這些碼字總體構成了n維線性空間的一個k維子空間。稱此k維子空間為(n,k)線性分組碼。線性系統碼的特點是每個碼字的前k位均由這個碼字所對應的信息位組成,並通過對這k位信息位的線性運算得到後面n—k是位監督位。
線性分組碼中應用最廣的是循環碼,循環碼的主要特徵是任何碼字在循環移位後個碼字。循環碼的優點在於其編碼和解碼手續比一般線性碼簡單,因而易於在設備上實現。在循環碼中,碼字可表示為多項式。循環碼的碼字多項式都可表示成為循環碼的生成多項式與這個碼字所代表的信息多項式的乘積,即,因此一個循環碼可以通過給出其生成多項式來規定。常用的循環碼有BCH碼和RS碼。
網格碼有多種描述方法,網格圖是常用方法之一,它能表示出編碼過程。一個碼率為1/2、包含四種狀態的網格碼的網格圖如圖所示。圖1中00,01,10,11表示編碼器所具有的四種狀態,以「·」示出,從每一狀態出發都存在兩條支路,位於上面的一條支路對應於編碼器輸入為「0」的情況,位於下面的一條支路對應於編碼器輸入為「1」的情況,而每一支路上所列出的兩個二進位碼則表示相應的編碼輸出。因而可知,編碼輸出不僅決定於編碼器的當前輸入,還決定於編碼器的狀態,例如在圖中從「00」狀態出發;,若輸入的二進制數據序列為1011,則編碼器的狀態轉移過程為00→01→10→01→11,而相應的編碼輸出序列為11010010。在網格圖中任意兩條從同一狀態出發;,經不同的狀態轉移過程後又歸於另一相同狀態(該狀態也可與初始狀態相同)的路徑間的距離的最小值稱為碼的自由距離。如該圖中的為5。對於卷積碼來說,的計算可簡化為始於且終於零狀態的非全零路徑與全零路徑間距離的最小值。是表徵網格碼糾錯能力的重要參數。維特比演算法是廣泛採用的網格碼的解碼方法。由於網格碼的狀態越多,解碼越復雜,所以狀態個數是度量網格碼解碼復雜性的重要參數。一般說來可以通過增大解碼復雜性來增加,從而提高碼的糾錯能力。
BCH碼、網格碼已被廣泛地應用於移動通信、衛星通信和頻帶數據傳輸中。RS碼也被廣泛應用於光碟的存儲中。
大多數糾錯碼是設計來糾隨機誤碼的,可以通過交織的方法使它適用於對突發誤碼的糾錯。交織是一種使得集中出現的突發誤碼在解碼時進行分散化的措施,從而使其不超出糾錯碼的糾錯能力范圍。 卷積碼不對信息序列進行分組編碼,它的校驗元不僅與當前的信息元有關,而且同以前有限時間段上的信息元有關。卷積碼在編碼方法上尚未找到像分組碼那樣有效的數學工具和系統的理論。但在解碼方面,不論在理論上還是實用上都超過了分組碼,因而在差錯控制和數據壓縮系統中得到廣泛應用。
Ⅲ ldpc碼的編解碼原理是什麼ldpc碼是如何構造出來的解碼演算法有哪些
BP是belief-propagation,指得是置信傳播法。 BF是Bit-Flipping,指得是比特翻轉法。 兩者的思想都是通過信息傳遞迭代判斷最可能錯誤的點。但BP在計算中使用了先驗概率和後驗概率作為判斷的依據。而BF則是根據傳遞的信息評估某位是1或0的可能性
Ⅳ 什麼是卷積編碼
卷積碼是將k個信息比特編成n個比特,但k和n通常很小,特別適合以串列形式進行傳輸,時延小。
卷積碼定義:
若以(n,k,m)來描述卷積碼,其中k為每次輸入到卷積編碼器的bit數,n為每個k元組碼字對應的卷積碼輸出n元組碼字,m為編碼存儲度,也就是卷積編碼器的k元組的級數,稱m+1= K為編碼約束度m稱為約束長度。卷積碼將k元組輸入碼元編成n元組輸出碼元,但k和n通常很小,特別適合以串列形式進
卷積碼的編碼器
行 傳輸,時延小。與分組碼不同,卷積碼編碼生成的n元組元不僅與當前輸入的k元組有關,還與前面m-1個輸入的k元組有關,編碼過程中互相關聯的碼元個數為n*m。卷積碼的糾錯性能隨m的增加而增大,而差錯率隨N的增加而指數下降。在編碼器復雜性相同的情況下,卷積碼的性能優於分組碼。
編碼原理:
卷積碼編碼器
以二元碼為例,編碼器如圖。輸入信息序列為u=(u0,u1,…),其多項式表示為u(x)=u0+u1x+…+ulxl+…。編碼器的連接可用多項式表示為g(1,1)(x)=1+x+x2和g(1,2)(x)=1+x2,稱為碼 的子生成多項式。它們的系數矢量g(1,1)=(111)和g(1,2)=(101)稱作碼的子生成元。以子生成多項式為陣元構成的多項式矩陣G(x)=[g(1,1)(x),g(1,2)(x)],稱為碼的生成多項式矩陣。
Ⅳ cvsd編碼解碼原理
語法規則及函數模塊如下所示:
int do_stat()
{
int es=0;
fscanf(fp,"%s %s\n",&token,&token1);
printf("%s %s\n",token,token1);
es=statement();
if (es>0) return(es);
fscanf(fp,"%s %s\n",&token,&token1);
printf("%s %s\n",token,token1);
if(strcmp(token,"while")==0)
{
fscanf(fp,"%s %s\n",&token,&token1);
printf("%s %s\n",token,token1);
if(strcmp(token,"(")) return(es=5);
fscanf(fp,"%s %s\n",&token,&token1);
printf("%s %s\n",token,token1);
es=expression();
if(es>0) return(es);
if(strcmp(token,")")) return(es=6);
fscanf(fp,"%s %s\n",&token,&token1);
printf("%s %s\n",token,token1);
}
else es=3;
return(es);
}
//<聲明語句> ::=int <變數>|<變數>;
//<declaration_stat>::=int ID,{ID};
int declaration_stat()
{
int es=0;
fscanf(fp,"%s %s\n",&token,&token1);
printf("%s %s\n",token,token1);
if (strcmp(token,"ID")) return(es=3); //不是標識符
fscanf(fp,"%s %s\n",&token,&token1);
printf("%s %s\n",token,token1);
while(strcmp(token,",")==0 )
{
fscanf(fp,"%s %s\n",&token,&token1);
printf("%s %s\n",token,token1);
if (strcmp(token,"ID")) return(es=3); //不是標識符
fscanf(fp,"%s %s\n",&token,&token1);
printf("%s %s\n",token,token1);
};
if (strcmp(token,";") ) return(es=4);
fscanf(fp,"%s %s\n",&token,&token1);
printf("%s %s\n",token,token1);
return(es);
}
//<程序>::={<聲明序列><語句序列>}
//program::={<declaration_list><statement_list>}
int program()
{
int es=0;
fscanf(fp,"%s %s\n",token,token1);
printf("%s %s\n",token,token1);
if(strcmp(token,"main")==0)
{
fscanf(fp,"%s %s\n",&token,&token1);
printf("%s %s\n",token,token1);
if (strcmp(token,"(")) return(es=5); //少左括弧
fscanf(fp,"%s %s\n",&token,&token1);
printf("%s %s\n",token,token1);
if (strcmp(token,")")) return(es=6); //少右括弧
fscanf(fp,"%s %s\n",&token,&token1);
printf("%s %s\n",token,token1);
}
else
{
es=8;
return(es);
}
if(strcmp(token,"{"))//判斷是否'{'
{
es=1;
return(es);
}
fscanf(fp,"%s %s\n",&token,&token1);
printf("%s %s\n",token,token1);
es=declaration_list();
if (es>0) return(es);
es=statement_list();
if (es>0) return(es);
if(strcmp(token,"}"))//判斷是否'}'
{
es=2;
return(es);
}
return(es);
}
輸入如下:
main()
{int a,b,c;
read a;
read b;
c=0;
do{
c=a*b;
b=b+1;
a=a-1;
}while(b<=20)
write c;
}
輸出結果如下:
請輸入源程序文件名(包括路徑):main.txt
詞法分析成功!
main main
( (
) )
{ {
int int
ID a
, ,
ID b
, ,
ID c
; ;
read read
ID a
; ;
read read
ID b
; ;
ID c
= =
NUM 0
; ;
do do
{ {
ID c
= =
ID a
* *
ID b
; ;
ID b
= =
ID b
+ +
NUM 1
; ;
ID a
= =
ID a
- -
NUM 1
; ;
} }
while while
( (
ID b
<= <=
ID b
<= <=
NUM 20
) )
write write
ID c
; ;
ID c
; ;
} }
=====語法分析結果!======
語法分析成功!
程序分析成功!!!
Ⅵ 算術編碼的編碼方法
若有一個a、b、c、d四種符號的單符號信源,待編序列為S=abda,已知:
符號a b c d
符號概率Pi 0.100 0.010 0.001 0.001
(以二進位小數表示)
累積概率∑pi 0.000 0.100 0.110 0.111
按照一定精度的數值作為序列的算術編碼,實質上是分割單位區間的過程。實現它,必須完成兩個遞推過程:一個代表碼字C(·),另一個代表區間寬度為A(·)。若記SXi表示S的增長(即S後增加一個符號Xi)序列。則有圖1 。
若記λ為空序列,有A(λ)=1,C(λ)=0,則有如圖2 。
並依次求得:C(abd)= 010111, A(abd)= 0.00001
C(abda)= 0.010111 ,A(abda)= 0.000001 該編碼過程可以用圖3所示的單位區間劃分的過程來描述。
解碼為逆遞推過程,可以通過對編碼後的數值進行比較來實現。即判斷C(S)落入哪一個區間,最後得出一個相應的符號序列S'=Ma=S。
實際的編解碼過程比較復雜,但原理相同,算術編碼的理論性能也可使平均符號代碼長度接近符號熵,而且對二元信源的編碼實現比較簡單,故受重視。中國將它應用於報紙傳真的壓縮設備中,獲得了良好的效果。
Ⅶ 糾錯碼的簡介
糾錯碼(error correcting code) ,是在接收端能自動地糾正數據傳輸中所發生差錯的碼。糾錯碼的基本思路是在所有的由發送符號組成的序列中,僅挑出其中一部分做為信息的代表向信道發送,並使得所挑出的這些序列之間有盡可能多的差異。每個被挑出的允許發送的序列被稱為一個碼字,而碼字的總合稱為碼。在發送端把信息變換成碼字的過程稱為編碼;在接收端從接收到的信號判定所發碼字、從而恢復信息的過程稱為解碼(或解碼)。在解碼時,若收到的信號不是碼中的一個碼字,則可以肯定在傳輸中出現了差錯,從而著手對差錯進行糾正。糾錯的方法是找到與接收到的信號最接近的碼字,並將其判定為發送信號。一般採用「距離」來度量信號間的接近程度,一種常用的「距離」稱為漢明距離,它被定義為兩碼字間對應位不同的個數總和。一個給定碼,其全部碼字兩兩之間距離的最小值被稱為這個碼的碼距。碼距是一個碼糾錯能力的重要參數,例如在漢明距離下,若接收到的信號出錯的位數不多於碼距的一半,則接收端總能正確地恢復所發送的碼字,從而正確地恢復所發送的信息。
糾錯編碼又稱信道編碼,它與信源編碼是信息傳輸的兩個方面。它們之間存在對偶的關系。應用信道解碼直接對一些自然信息進行處理,可以去掉剩餘度,以達到壓縮數據的目的。
為了使一種碼具有檢錯或糾錯能力,必須對原碼字增加多餘的碼元,以擴大碼字之間的差別,使一個碼字在一定數目內的碼元上發生錯誤時,不致錯成另一個碼字。准確地說,即把原碼字按某種規則變成有一定剩餘度的碼字,並使每個碼字的碼元間有一定的關系。關系的建立稱為編碼。碼字到達收端後,用編碼時所用的規則去檢驗。如果沒有錯誤,則原規則一定滿足,否則就不滿足。由此可以根據編碼規則是否滿足以判定有無錯誤。當不能滿足時,在可糾能力之內按一定的規則確定錯誤所在的位置,並予以糾正。糾錯並恢復原碼字的過程稱為解碼;碼元間的關系為線性時,稱為線性碼;否則稱為非線性碼。檢錯碼與其他手段結合使用,可以糾錯。檢錯反饋重發系統(ARQ系統)就是一例。
在構造糾錯碼時,將輸入信息分成k位一組以進行編碼。若編出的校驗位僅與本組的信息位有關,則稱這樣的碼為分組碼。若不僅與本組的k個信息位有關,而且與前若干組的信息位有關,則稱為格碼。這種碼之所以稱為格碼,是因為用圖形分析時它象籬笆或格架。線性格碼在運算時為卷積運算,所以叫卷積碼。 R.W.漢明於1950年首先給出可以糾正一個獨立錯誤的線性分組碼──漢明碼。差不多與此同時E.戈雷給出一種可以糾正三個錯誤的完備碼。完備碼雖然十分罕見,但有較大實用意義。1954年D.E.莫勒提出一種能糾正多個錯誤的碼;I.S.里德則立即給出它的解碼方法,用的是擇多判決法,這種碼常稱為RM碼。1957年,E.普勒齊引入了循環碼的概念。1959~1960年出現了BCH碼,引進有限域的概念,解決了循環碼的構造和性能估計等基本問題。後來成為線性分組碼中最重要的一類碼。它能糾正多個錯誤,且在實用范圍內接近信道編碼定理所指出的誤碼率值。但當n增大時,其誤碼率不能呈指數下降。BCH碼的解碼問題是W.W.彼得森解決的;錢天聞則提供了一種系統地搜索根的方法。1967年,E.R.伯利坎普提出一種迭代演算法,大大簡化了解碼,使糾錯碼趨於實用。1970年В.Д.戈帕提出一種線性分組碼的構造方法,原則上它可以達到吉爾伯特限,實現了理論上預期的目標。但至今仍未解決如何具體構造這種碼的問題。
卷積碼最早由P.伊萊亞斯於1955年提出。它的糾錯能力較強,設備復雜程度與分組碼大體相當。首先獲得成功的解碼方法是序列解碼。1967年A.J.維特比提出的解碼演算法,能較好地按最大似然准則解碼,且在許多領域中均可應用。卷積碼還可用代數方法解碼。它的設備雖較簡單,但性能較差。卷積碼在理論上不如分組碼成熟,所用的工具也比較多樣,尚缺乏系統的、統一的方法處理。
分組碼和卷積碼不但可以用來糾正獨立錯誤,而且可以用來恢復刪除錯誤和糾正突發錯誤。如分組碼中有里德-索洛蒙碼,法爾碼等;卷積碼中有岩垂碼及擴散卷積碼等。
為了實現低的誤碼率,根據式(1),要求碼長n較大。但已知的大多數碼,當n變大時不是性能欠佳或者難以構造,就是解碼過分復雜,不容易實現。但是,可以利用好的碼進行級連,以得到性能更好的碼。級連碼的內碼和外碼,用分組碼和卷積碼都可以。這在深空通信中應用較多。
Ⅷ 實用無線電遙控電路的目錄
第1章無線電遙控概述1
1.1無線電遙控的任務和遙控系統(裝置)分類1
1.1.1無線電遙控的任務及遙控指令信號1
1.1.2遙控系統(裝置)及其分類3
1.1.3無線電遙控與遙測4
1.2無線電遙控設備的組成及其功能5
1.2.1無線電遙控設備的組成5
1.2.2無線電遙控發射電路6
1.2.3無線電遙控接收機9
應用與導讀超再生接收原理及解讀14
1.3無線電遙控常用的調制方式15
第2章單通道無線電遙控電路19
2.1單通道無線電遙控方式19
2.2單通道27MHz無線電遙控繼電器開關電路20
2.3採用幅度鍵控式晶體穩頻發射的無線電遙控電路22
2.4單通道28MHz無線電遙控電氣插座電路25
2.5單通道265MHz無線電遙控繼電器控制電路28
2.6單通道265MHz無線電遙控可控硅觸發開關控制電路29
2.7單通道280MHz無線電遙控可控硅觸發插座電路31
2.8單通道280MHz無線電遙控家用電器插座電路33
2.9單通道280MHz無線電遙控繼電器控制開關電路35
2.10無線電遙控電子模特兒「歡迎光臨」發聲電路37
2.11超短波(265MHz)無線電遙控、觸摸兩用防盜報警電路38
2.12超高頻303MHz無線電遙控防搶劫報警電路41
第3章單通道步進式無線電遙控電路44
3.1單通道步進式無線電控制方式44
3.2單通道步進式超高頻(280MHz)無線電遙控繼電器開關電路45
3.3無線電遙控單通道步進式4路繼電器控制電路47
3.4無線電遙控步進式調光伴鳥鳴聲控制電路48
3.5無線電遙控八選台收音機電路51
3.6無線電遙控電子鳥模擬8種動物叫聲電路53
3.7仿自然風和名曲伴唱電風扇控制電路54
3.8無線電遙控電風扇自動變速電路56
3.9無線電遙控高級落地扇電路58
第4章頻分多路無線電遙控電路61
4.1頻分制無線電遙控方式61
4.1.1頻分制單路遙控61
4.1.2頻分制多路遙控設備63
4.2LC選頻放大器64
4.3用於音頻解碼的TTL鎖相環LM56767
4.3.1鎖相環的組成及其相位鎖定原理67
4.3.2鎖相環音頻解碼集成電路LM56768
應用實例LM567單音解碼繼電器控制電路70
4.4CMOS數字集成鎖相環CD404673
4.4.1CMOS鎖相環的組成、工作原理及性能73
4.4.2CD4046的主要用途和功能76
4.4.3CD4046在無線電遙控中的應用78
4.5採用分立元件、通用集成器件組成的頻分多路無線電遙控電路81
4.5.1採用音頻鎖相環LM567的頻分多路無線電遙控電路81
4.5.2頻分制二通道無線電遙控開關電路82
4.5.3頻分制三通道無線電遙控繼電器控制電路84
4.5.4採用數字鎖相環CD4046的三通道無線電遙控可控硅開關電路86
4.5.5採用數字鎖相環CD4046的頻分多路無線電遙控電路88
4.5.6頻分四通道無線電遙控電路90
4.6雙音多頻集成編碼器及頻分多路無線電遙控系統92
4.6.1雙音多頻編碼原理92
4.6.2DTMF信號產生器和典型集成編碼器件95
4.6.3DTMF信號編碼器TCM5087及其在遙控中的應用95
4.6.4HD61826雙音多頻編碼器和DTMF無線電遙控發射電路98
4.6.5用MK5087和LM567構成的八路DTMF無線電遙控電路100
4.7DTMF專用集成解碼器及多頻道無線電接收電路103
4.7.1雙音多頻解碼器及多頻道無線電遙控電路103
4.7.216通道DTMF編解碼無線電遙控電路107
4.7.3雙音多頻解碼器MT8870及其在遙控中的應用109
4.7.4採用MK5087/MT8870編解碼器的四通道16組無線電遙控裝置111
4.7.5用UM95087/TC35031編解碼器件構成的四通道16組無線電遙控電路113
4.7.6採用DTMF編解碼器S2559F/MT8870的16通道無線電遙控電路116
4.7.7採用S2559/YN9102的四通道16組無線電遙控電路118
第5章時分多路無線電遙控電路121
5.1時分多路無線電遙控概述121
5.2脈沖編碼遙控指令的生成和常用的編解碼器125
5.2.1用二進制脈沖編碼傳送遙控指令及帶來的優點125
5.2.2二進制編碼/解碼電路127
5.2.3二-十進制(BCD)編碼電路128
5.3使用常見的通用數字集成器件設計時分多路編解碼器130
5.3.1脈沖編、解碼中常用的CMOS型數字集成電路130
5.3.2神通廣大的十進制計數/脈沖分配器CD4017132
5.3.3採用CD4017的碼分九路無線電發射電路135
5.3.4由CD4017構成的可控型步進式無線電遙控電路136
5.3.5採用556和CD4017的脈沖編碼無線電遙控發射電路138
5.3.6採用兩只CD4017的步進式脈沖編碼無線電遙控電路140
5.4話機脈沖撥號集成器件及脈沖編碼器142
5.4.1脈沖撥號集成電路及其主要功能142
5.4.2脈沖撥號集成器件UM9151及其應用144
5.4.3脈沖撥號集成器件LR40992及其應用146
5.4.4脈沖撥號集成器件TP50981N及其應用148
5.5專用數字編解碼器150
5.5.1專用多路編解碼集成器件的類型和特點151
5.5.2多路時分編解碼器的常見型號和主要電參數152
5.6MC145026/27/28和SC41342/43/44系列編解碼器及其應用154
5.6.1MC145026/27/28(SC41342/43/44)的編解碼原理和電路結構154
5.6.2MC145026/27/28(SC41342/43/44)系列編解碼電路設計及應用160
5.6.3由MC145026/27構成的碼分制四通道無線電遙控電路161
5.7編解碼合一的單片集成器件MC145030及其應用163
5.7.1單片遙控編解碼器MC145030163
5.7.2採用MC145030的應答式512路報警系統167
5.8VD5026/27/28和ED5026/27/28編解碼集成電路及其應用171
5.8.1VD5026/27/28和ED5026/27/28編解碼器171
5.8.2VD5026和VD5027/28組成的多路遙控系統173
5.8.3採用數字編解碼器ED5026/27的多通道無線電遙控電路174
5.8.4碼分多路無線電遙控繼電器控制電路176
5.9YYH26/27/28編解碼集成器件及其應用178
5.9.1YYH26/27/28多路數字編解碼集成電路178
5.9.2採用YYH26/27編解碼器的無線電遙控電路181
5.9.3設置有加密地址碼的多路無線電遙控電路182
5.10HT12E/D/F編解碼集成電路及其應用184
5.10.1HT12系列集成電路的編解碼原理185
5.10.2HT12E/D/F組成的多路遙控系統186
5.10.3採用HT12E/D/F的多路應答式巡迴監測系統187
5.10.4HT12E/D組成的256路多功能遙控系統187
5.10.5採用HT12E/F的電力載波多路遙控系統188
5.10.6採用HT12E/D的碼分256路16種子密碼的無線電遙控系統189
5.11ZH89系列編解碼集成器件及其應用191
5.11.1ZH8907/11多功能編解碼集成電路及其應用192
5.11.2ZH8901單片編解碼集成電路和多路應答系統193
5.11.3由ZH8901構成的碼分多路無線電遙控電路195
5.11.4用ZH8901構成的碼分多路超級無線電監督系統197
5.12LC219/220A和LC2190/2200控制數據編解碼器及其應用199
5.12.1LC219/220A編解碼器199
5.12.2LC2190/2200控制數據編解碼器201
5.12.3採用LC219/220A的無線電遙控六路互鎖可控硅控制電路203
應用與導讀數據編碼器LC219在紅外和無線電遙控中的合理使用和正確連接205
5.12.4無線電遙控六路可控硅自鎖控制電路206
應用與導讀LC220A解碼輸出的兩種鎖定方式及正確使用方法207
5.13TM701/702/703系列多功能編解碼器及其應用208
5.13.1TM701/702/703系列編解碼器208
5.13.2採用TM703/702的無線電遙控九路繼電器控制電路211
5.14自動變碼的跳碼型、滾動型編解碼器及其在遙控中的應用213
5.14.1跳碼型、滾動型編解碼器概述213
5.14.2跳碼型編碼器ACM1330E和解碼器ACM1550D214
5.14.3ACM1330E/1550D跳碼型編解碼器的應用216
5.14.4跳碼型雙功能編解碼集成電路TR1300/1315及其應用219
第6章無線電遙控發收模塊(組件)及其應用223
6.1微功耗超高頻無線電遙控發收模塊(組件)223
6.2微功耗超高頻無線電遙控發收模塊RCM-1A/RCM-1B225
6.2.1RCM-1A/RCM-1B的外形、主要功能及電參數226
6.2.2無線電發收模塊RCM-1A/RCM-1B的典型應用227
6.3無線電遙控發收模塊T630/T631、TWH630/TWH631及其應用231
6.3.1超短波(265MHz)無線電發收模塊T630/T631及其應用231
6.3.2長波(150kHz)無線電發收模塊T630/T631及其應用235
6.3.3超高頻(265MHz)無線電發收模塊TWH630/TWH631及其應用238
6.4超短波發收模塊T930、T930A 和T932240
6.5超高頻(250~350MHz)無線電發收模塊TDC1808(A)/TDC1809及其應用243
6.6超高頻(303.9MHz)無線電發收模塊M303S/M303R及其應用246
6.6.1超高頻發收模塊M303S/M303R簡介246
6.6.2數字編碼16路無線電報警系統248
6.7超高頻無線電發收模塊TXC3-T/TXC3-R及其應用249
6.8TWH9236/TWH9238系列無線電遙控發收模塊及其應用252
6.8.1TWH9236系列發射模塊的內部組成、外形結構及主要參數253
6.8.2TWH9238系列接收模塊的外形結構及主要參數255
6.8.3TWH9236/TWH9238發收模塊的應用257
6.9超高頻(315MHz)無線電遙控發收模塊CSJ-T/R系列及其應用260
6.9.1CSJ-T/R系列無線電遙控發收模塊260
6.9.2CSJ-T/R系列無線電遙控發收模塊的應用265
6.10FDD400/JDD400系列超高頻(250~350MHz)無線電發收模塊269
6.10.1FDD400/JDD400無線電發收模塊及其應用269
6.10.2FD400/JD400無線電發收模塊272
6.10.3FDD400-1/JDD400-1無線電發收模塊及其應用273
6.11超短波(36MHz)無線電發收模塊FDD-5/JDD-5及其應用275
6.11.1FDD-5/JDD-5的組成和主要電參數275
6.11.2FDD-5/JDD-5發收模塊的應用277
6.12超高頻(315MHz)無線電遙控發收模塊TX315系列279
6.12.1採用聲表面波諧振器的無線電發收模塊TX315A279
6.12.2採用SAW和ASK單片接收晶元的發收模塊TX315B1283
6.12.3改進型無線電發收模塊TX315B2285
6.13低電壓高穩定度的無線電發收模塊CBF1/CBJ1及其應用288
6.13.1CBF1/CBJ1的外形結構和主要性能288
6.13.2CBF1/CBJ1發收模塊的應用289
6.14高穩定度無線電發收模塊YG300U-S/YG300U-R及其應用293
6.14.1YG300U-S/YG300U-R發收模塊的結構、組成和主要性能293
6.14.2YG300U-S/YG300U-R發收模塊的應用295
第7章綜合應用與典型課題設計實例297
7.1採用VD5026/VD5027編解碼器的多路超高頻無線電遙控系統297
7.2採用紅外探測和無線電調頻技術的監控報警裝置300
7.3無人值守的紅外探測16路無線電防盜報警系統303
7.4採用ED5026/ED5027和YG300U-S/YG300-R的無線電遙控16通道繼電器控制電路306
7.5可前進、後退的無線電遙控電動小汽車電路308
7.6稚童遠離大人音響提醒器電路310
7.7無線電遙控/觸摸步進式調光燈電路311
7.8DTMF四通道16組彩燈伴樂曲發聲無線電遙控電路314
7.9採用ED5026/ED5027和HS101/HS201的四通道無線電遙控電路317
7.10採用編解碼器MC145026/MC145027的16通道無線電遙控系統319
7.11採用T930/T932和CIC9187/YN9101的16通道無線電遙控系統322
7.12優先編碼10通道無線電遙控電路325
7.13採用RCM-1A/RCM-1B和ED5026/ED5027的一點對多點的無線電監控系統328
7.14採用FD400/JD400的小型無線數字尋呼系統330
7.15無人值守的紅外監控無線電報警電路332
7.16由跳碼晶元TR1300/TR1315組成的16通道無線電遙控實驗電路335
7.17採用CSJ-T300A/CSJ-R02A和BCD碼液位感測器的無線電遙測電路337
參考文獻343
Ⅸ 編碼器的詳細工作原理
絕對脈沖編碼器:APC
增量脈沖編碼器:SPC
兩者一般都應用於速度控制或位置控制系統的檢測元件.
旋轉編碼器是用來測量轉速的裝置。它分為單路輸出和雙路輸出兩種。技術參數主要有每轉脈沖數(幾十個到幾千個都有),和供電電壓等。單路輸出是指旋轉編碼器的輸出是一組脈沖,而雙路輸出的旋轉編碼器輸出兩組相位差90度的脈沖,通過這兩組脈沖不僅可以測量轉速,還可以判斷旋轉的方向。
增量型編碼器與絕對型編碼器的區分
編碼器如以信號原理來分,有增量型編碼器,絕對型編碼器。
增
量
型
編
碼
器
(旋轉型)
工作原理:
由一個中心有軸的光電碼盤,其上有環形通、暗的刻線,有光電發射和接收器件讀取,獲得四組正弦波信號組合成A、B、C、D,每個正弦波相差90度相位差(相對於一個周波為360度),將C、D信號反向,疊加在A、B兩相上,可增強穩定信號;另每轉輸出一個Z相脈沖以代表零位參考位。
由於A、B兩相相差90度,可通過比較A相在前還是B相在前,以判別編碼器的正轉與反轉,通過零位脈沖,可獲得編碼器的零位參考位。
編碼器碼盤的材料有玻璃、金屬、塑料,玻璃碼盤是在玻璃上沉積很薄的刻線,其熱穩定性好,精度高,金屬碼盤直接以通和不通刻線,不易碎,但由於金屬有一定的厚度,精度就有限制,其熱穩定性就要比玻璃的差一個數量級,塑料碼盤是經濟型的,其成本低,但精度、熱穩定性、壽命均要差一些。
解析度—編碼器以每旋轉360度提供多少的通或暗刻線稱為解析度,也稱解析分度、或直接稱多少線,一般在每轉分度5~10000線。
信號輸出:
信號輸出有正弦波(電流或電壓),方波(TTL、HTL),集電極開路(PNP、NPN),推拉式多種形式,其中TTL為長線差分驅動(對稱A,A-;B,B-;Z,Z-),HTL也稱推拉式、推挽式輸出,編碼器的信號接收設備介面應與編碼器對應。
信號連接—編碼器的脈沖信號一般連接計數器、PLC、計算機,PLC和計算機連接的模塊有低速模塊與高速模塊之分,開關頻率有低有高。
如單相聯接,用於單方向計數,單方向測速。
A.B兩相聯接,用於正反向計數、判斷正反向和測速。
A、B、Z三相聯接,用於帶參考位修正的位置測量。
A、A-,B、B-,Z、Z-連接,由於帶有對稱負信號的連接,電流對於電纜貢獻的電磁場為0,衰減最小,抗干擾最佳,可傳輸較遠的距離。
對於TTL的帶有對稱負信號輸出的編碼器,信號傳輸距離可達150米。
對於HTL的帶有對稱負信號輸出的編碼器,信號傳輸距離可達300米。