行政院國家科學委員會專題研究計畫成果報告
總計畫:二技電機系學生實作能力提昇之教育課程設計與研究 子計畫:數位信號處理器實習課程改進與教材教具之製作 The Improvement of Digital Signal Processor Experiment Course
Including the Design of Textbook and Teaching Aid 計畫編號:NSC 89-2511-S-151-006 執行期限:89年8月1日至90年7月31日 主持人:盧春林 國立高雄應用科技大學電機工程系 E-mail: [email protected] 一、中文摘要 本計畫在第二年針對目前二技電機系 數位信號處理器實習課程的改進方面,完 成兩項主要工作,分別是完成一套極有效 率、極有系統、而且深入淺出的教材,以 及製作出一套和教材互相搭配、方便實用 又不會破壞原有設備的教具。教材設計的 特點是將「DSP實現離散數學演算結果」 為最終目的,再把相關知識、範例、以及 輔助工具等,有系統的編製成為可攜帶式 的檔案(pdf檔),放在網路上讓學生隨 時下載參考。教具的設計則考慮到各學校 現 有 的設 備(DSK ), 以 極 為 低 廉 的 成 本、卻有著極為顯著的功能改善,讓各校 原有的設備可以在不被破壞的情況下,也 就是採用彈性組合的方式之下,隨時和本 專題所製作的教具合併使用,以享受內建 信號產生器、聲音擴大機、RS232連線切 換開關 、產生 DTMF、解 DTMF … ..等 等 優 點,不但可以大幅提高DSP的實習效率, 卻又可以讓DSK隨時和本專題製作之輔助 教具脫離,將DSK獨立出來作為專題製作 使用。 關鍵詞:二技電機系、數位信號處理器實 習、教材、教具、離散數學、組合 Abstract
This project finished two main works in the second year. These two works are the design of the new textbook and the improvement of the teaching aid
individually. The new textbook is organized to help students very easily to reach the final goal, that is, to implement the transfer function of discrete-time system by DSP. The textbook is converted into several pdf files. Students can download them on School’s web site.
The teaching aid is built-in function generator, audio speaker with amplifier, RS232 connector control switch, DTMF generator, DTMF decoder, … .., etc. The teaching aid could be combined with the most popular DSP learning kit(DSK) in Taiwan’s technology university. Because there is no any modification when DSK is connected to the teaching aid, students can separate DSK from Teaching aid very easily at any time when they need only DSK in their own project.
Keyword : digital signal processor,
experiment, textbook, teaching aid, discrete-time system, combined.
二、緣由與目的 本計畫係三年期計畫的第二年,三年 計畫的總目的在於提昇二技電機系學生之 數位信號處理器(DSP)之實作能力,以 進一步達成全面提昇電機系學生實作能力 之最終目的。 由於近代半導體技術的突飛猛進, 連帶的大幅增進了數位信號處理器的運算 速度與可靠度,而且更重要的是價格也跟 著降低,以致於數位信號處理器被使用的 地方也就跟著快速的擴張,例如汽車之防
鎖 死 煞 車 系 統 (ABS) 、 自 動 行 路 控 制 系 統、引擎控制系統、高傳真數位電視機、 雷達偵測器、硬碟控制系統、雷射印表 機、伺服控制系統、3D影像旋轉、影像識 別、影像壓縮、語音處理、數值控制、機 器人控制、數位濾波器、鎖相迴路、數據 機、ISDN、傳真機、交換機、行動電話、 導航系統、 … 等等,換句話說,不管是電 力電子、信號量測與處理、馬達控制、或 者是自動控制應用等,當研究成果要轉化 成為實際產品時,幾乎都必須使用到功能 強大的單晶片數位信號處理器,由此可見 數位信號處理器對二技電機系的學生是多 麼的重要。 雖然目前市面上有不少有關數位信 號處理方面的書[1~13],但因為二技電機 系屬於技術性的教學導向,上述書籍不是 太偏重理論、不適合當實習教材,就是太 傾向技術手冊,技術上說明的太詳細以至 於複雜到根本不可能當作教科書,因此, 如果想要提昇二技學生數位信號處理器實 習之學習成效,顯然必須重新設計一套適 合二技學生使用的教材。 而為了重新設計一套真正適合二技 電機系學生使用的教材,首先就必須先將 課程的最終目標、以及要達成目標所需要 的方法予與重新確立。如圖一所示,要提 昇學生數位信號處理器(DSP)的實作能 力,其實就是要提高學生使用DSP去實現 離散數學(discrete-time system)公式 的能力,這裡所謂的離散數學公式,包括 了濾波器、資料轉換、DTMF編碼/解碼、 FSK 編 碼 / 解 碼 、 資 料 壓 縮 / 解 壓 縮 、 FFT、 … .. 等等 ,也就是 「 數 位 信 號 處 理」課程所教的內容。換句話說,數位信 號處理器實習的重點比較偏重在於將數學 公式變成產品,而不是離散數學本身的運 算,這點觀念在編寫教材時是非常重要 的。 就因為課程的重點在於「實現」而 不是理論本身,因此,本計畫乃將數位信 號處理的理論部份予以簡化,以免學生被 複雜的數學模糊了焦點,而將理論部份以 「實現者」的觀點重新分類,將DSP所要 實現的離算數學簡單的分成「輸出有回 授 」 、 也 就 是 所 謂 的 IIR ( Infinitive Impulse Response ),和輸出不回授、 也就是FIR(Finite Impulse Response) 等兩大類,再根據這種分類有系統的設計 出一套搭配實用範例的教材。 接著,既然教材的重點是在於引導 學生以DSP去「實現」離散數學,則如何 使用DSP,也就是DSP本身的構造、指令、 程式撰寫規範、程式組譯方法、如何將組 譯好的程式下載到DSP裡面,以便讓學生 使用實際信號觀察結果等等,都是教材必 須包含的範圍。而且萬一學生所撰寫的程 式發生錯誤(對初學者來說這是必經的階 段),還必須教導學生如何使用DSK方便 的功能,對程式或硬體電路進行除錯的工 作。 然而,由於DSP實習課程的重點是在 於實現離散數學的演算結果,因此,上述 內容顯然都只是「基本知識」而已,還和 離散數學扯不上關係,也就是說在編寫教 材的時候,這部份的篇幅不但不能佔據太 多,以免模糊了學生的焦點(這就是目前 市 面 上 有 關 DSP 方 面 的 書 籍 的 共 同 缺 點)、甚至「嚇跑」學生(因為DSP的功 能實在太多了),但簡短之後還必須夠明 瞭,以免失去教材的意義。因此,本計畫 在編寫這部份教材的時候,就特別費了一 番功夫重新整理,以所謂「教開車」的觀 念取代「教修車」的觀念,讓學生可以很 容易接受DSP。 另外,由於離散數學所演算的都是數 位系統,而要實現成為產品的時候卻又大 都是類比信號。因此,理想的 DSP實習教 材還應該包括有信號取樣的原理及注意事 項,內容應該包括有類比信號被轉換為數 位信號的時候,應該注意如何避免造成 Alias的現象,以及類比信號經過轉換之 後,會變成什麼樣的「數位頻率」等。 這裡,所謂「數位頻率」的問題, 指的是DSP所實現的類比信號,其頻率會 因為DSP取樣頻率的不同而跟著變動的現 象。經過本計畫實施的這兩年間的觀察結 果,學生普遍在方面會遭遇到困難。因
此,本計畫的教材也在「數位頻率」的解 說方面下了不少功夫。 由於本計畫所要改善的是DSP實習課 程,而既然是實習課程,則實習範例的設 計就顯的非常重要。而既然本計畫已經把 離散數學予與簡單的分成兩類,因此,範 例的設計上就先繞著這兩個類別打轉,也 因此,諸如使用IIR的方式製作弦波產生 器、使用IIR的方式製作各種濾波器、使 用FIR的方式製作濾波器、使用IIR的方式 製作DTMF信號產生器等等,就成了本計畫 的教材當中不可或缺的內容。 不過,因為離散數學常常會需要使 用到Z轉換函數來做運算,或者,有時候 有些系統的設計係直接以Z轉換的形式來 表示,因此,如何將Z轉換函數轉換成為 離散數學(discrete time system)的形 式,也是DSP實現離散數學所必須具備的 能力,因此,本計畫的教材當然不能有遺 珠之憾。 再者,教材本身必須針對學生學習 的進度,適時的搭配一些輔助教材,以便 提昇學生的學習成效,因此,像鋸齒波產 生器、以查表方式製作弦波產生器、FSK 編碼器/解碼等等,也在本計畫所編寫的 教材之內。另外,DSP實習是一種極為實 用的課程,為了讓學生能夠學以致用,實 用級的範例當然也不能完全沒有,因此, 如何使用Bilinear 轉換的方法設計各種 IIR濾波器、如何根據類比信號的要求製 作一FIR濾波器、A-Law語音壓縮/解壓縮 技術、甚至是FFT等,雖然有點複雜,但 還是需要面對,因此,本計畫所編寫的教 材還是將這些包括進來,至於實際上課時 要不要教?就由上課教師依照實際教學情 況自行取捨。 就因為這些實用級的範例是DSP實習 課程之必須,尤其像是使用Bilinear轉換 的方法來設計IIR數位濾波器,以及FIR數 位濾波器的設計等,既然講到實用,就必 須不怕複雜,但是,實際製作時卻發現, 這兩項設計工作中,bilinear IIR所需要 換算的項目太多,以致於學生常常計算錯 誤;而FIR方面則是係數的量實在太大, 不但計算費時,就連係數計算完成要輸入 到程式裡面都常常會打錯,嚴重影響到學 生之實習成效。另外,前述之查表法製作 弦波產生器也有類似問題,因此,本計畫 除了設計教材之外,也特別針對這些問題 提供解決辦法,自行開發成功三套輔助軟 體,分別用來產生符合DSK程式撰寫格式 的弦波常數表、FIR常數表,以及可以引 導學生按步就班的做Bilinear的轉換工作 等。 在教材部份完成之後 ,接著就來看 看DSP實現離散數學時,需要什麼樣的教 具?由於離散數學所演算的都是數位系 統,而要實現成為產品的時候卻又大都是 類比信號,因此,要使用DSP實現離散數 學的演算結果時,顯然還需要再透過類比 換數位(A/D)以及數位換類比(D/A)的 轉換。也因此,真正能夠把離散數學「變 成」產品的硬體電路,至少就必須包含有 A/D、D/A(合稱為AIC:Analog Interface Circuit)和DSP本 身。由德州儀器公司 (Ti )所設計生產的 DSP 入 門 學 習 套 件 「DSK」(DSP Start’s Kit)就具有這種 架構,因此,很適合作為DSP實習設備的 產品,尤其是其價格還是相當低廉,也因 此DSK是目前全國使用率最高的DSP實習套 件。 不過,真正使用DSK去實現離散數學 時,為了觀察結果是否正確,通常還需要 一些輔助設備,例如信號產生器、示波 器、聲音擴大機與喇叭、DTMF信號產生 器、DTMF信號解碼器、 … 等等設備。而往 往這些設備的操作又會分散學生的注意 力,造成學生學習上面的負擔;尤其是萬 一操作不當,還會造成學習DSP實習的障 礙,而如果再加上DSK又常常會當機的問 題,則顯然現有的DSP實習設備還有很多 需要改進的地方。這就是本計畫這兩年來 在教具方面的努力方向;而經過兩年的努 力之後,本計畫在教具的改善方面已經有 了令人振奮的具體成果。 三、結果與討論
(一) 教材方面 本計畫曾在第一年規劃出十五個實 驗,經過一年的實施之後,第二年(今 年)修改之後的實驗內容如下: 1. 認識DSP與DSK:開學第一週,主要在 於簡介DSP及其用途,以及介紹實習 所使用的DSK之構造。教材內容偏重 觀念介紹;實習重點則在於讓學生學 會DSK的操作。 2. 鋸齒波產生器:其係DSK所提供的範 例程式,用於測試DSK本身,很是合 作為第一個範例程式。學生的習題方 面可以讓學生製作方波產生器。 3. 弦波產生器 ( 一 ):這是真正使用 DSP實現離散數學的第一個例題。弦 波產生器係採用IIR的方式製作,設 計這個實驗的原因是其數學比較簡 單,但程式的寫法又很典型。習題方 面,可以讓學生製作同時產生兩個以 上的頻率,例如電話振鈴、DTMF等。 4. 取樣原理與Alias:這是第一個輸入 類比信號的範例,主要目的是讓學生 知道A/D時應該注意的事項,順便利 用機會講解AIC的使用。習題方面, 可以讓學生製作AM調變器,其中,載 波係使用IIR方式製作出來的弦波, envelop則是類比輸入信號。 5. 弦波產生器(二):這是搭配進度所 設計的範例,也是實用級的範例,目 的是讓學生熟悉常用的指令,以及更 了解DSP的應用。由於建表的工作極 為繁瑣,因此,本計畫特別設計了名 叫calsintb.exe的輔助軟體,幫助學 生完成工作。課程講解的部份則解釋 DSP的中斷。習題方面只要讓學生製 作不同頻率與振幅的弦波,讓學生從 頭到尾做一次,使更熟悉工作即可。 6. DSP的定址模式:這是本專題計畫在 教材上的獨特安排。教材一開始並不 詳細介紹所有指令,而只介紹相關指 令,讓學生知道DSP怎麼用之後,再 進 一 步 詳 細 介 紹 DSP 的 指 令 定 址 模 式,也就是所謂先教「開車」、再教 「修車」的觀念。習題方面,可以搭 配一些簡單的數學計算,如32位元的 除法等,只要讓學生更熟悉DSP的操 作即可。 7. IIR濾波器(一):這是典型的DSP實 現離散數學的實驗,實驗是在離散數 學公式已經確定的情況下,教導學生 如何撰寫DSP程式,而不在於教導離 散數學公式是怎麼得到的。不過,因 應實際上的需要,還是得講解Z轉換 如 何 轉 變 成 為 discrete time system。習題方面,則可以給不同的 公式,讓學生寫程式以DSP實現。 8. IIR濾波器(二):這是實用級的濾 波器設計,學生必須根據濾波器的基 本需求,使用Bilinear的方法計算出 離散數學公式裡面的各個係數,再撰 寫程式實現濾波器。這時候,學生常 常會卡在實際頻率與數位頻率之間的 轉換,必須加強說明。習題只需改變 濾波器的特性,讓學生 重新 製 作 即 可。至於設計過程雖然極為複雜,不 過,只要利用本計畫所開發出來的輔 助軟體,問題就可迎刃而解。 9. FIR濾波器:這也是實用級的範例, 講解21點的方形窗低通濾波器。練習 方面則可要求學生製作更多點數的其 他濾波器,並於程式當機時讓學生找 出原因,可以有效增進學生對DSP的 了解。 10. FSK編碼器:使用查表法將輸入信號 編 碼 成 為 1200/2200 的 FSK 信 號 。 不 過,因為學生應該都已經具備相當程 度的DSP基礎,因此,範例可以只給 方塊圖或簡單的流程圖,讓學生自行 完成DSP的實現。教學重點方面則在 於詳細介紹DSP(TMS320C50)的架構 與特色。 11. FSK解碼器:和實驗十類似,範例只 講解碼原理,DSP實現則讓學生自己 做 。 另 外 , 上 課 講 解 重 點 仍 然 是 TMS320C50的詳細介紹。
12. 語音壓縮與解壓:講解A-LAW壓縮與 解壓語音信號的原理,提供學生壓縮 的範例程式,讓學生設計解壓縮的程 式。 13. FFT(一) : 由 於FFT 相當複雜 , 因 此,FFT的第一個星期只講原理,包 括butterfly與bit reverse,並且使 用本計畫特別開發的輔助軟體來觀察 FFT轉換原理。習題方面也只要求學 生使用上述軟體觀察各種不同頻率與 振幅的信號之FFT轉換過程與結果即 可。 14. FFT(二):FFT的第二個星期,可以 試著給點數較少的範例,讓學生體驗 DSP實現FFT的感覺。習題方面,則可 依 照 實 際 情 況 要 求 學 生 以 DSP 實 現 FFT。 15. 專題製作:依照兩年來實際實施教學 的經驗,由於本計畫實施的時候,仍 然有舉行期中考與期末考(兩次都考 實作),因此,實際上都只實施到第 13或14個實驗。也因此,實驗15只是 備用,是必須在時間非常充裕的情況 下才可能用到。 有關教材的製作方面,本計畫係將上 述各實驗內容大致以實驗目的/內容,範 例程式,範例程式流程圖,以及練習問題 等的順序編排,並且在範例程式裡面對程 式做詳細的解說,再輔以詳細的流程圖, 以便讓學生了解DSP指令的奧妙。例如, 學生對圖二所示的指令說明與流程圖就印 象深刻。 又上述各實驗教材都經過轉換成為可 攜帶式的 pdf 檔案 ,放置在學 校( 電 機 系)的網站上面,讓學生隨時可以下載。 (二) 教具方面 本計畫今年(第二年)在教具的改善 方面,有著極為豐碩的成果,不但找到第 一年所說的、DSK常常當機的原因,並加 以測底改善,而且還增加許多功能,今將 本計畫所設計的教具之特色整理如下: 1. 增加RS232之連線切換開關。經過本 計畫長期來的實驗,發現DSK容易當 機的原因是個人電腦的DSK5D.EXE 和 DSK 內 部 監 督 程 式 的 溝 通 不 良 所 造 成。因此,本計畫特別設計了一個開 關,讓學生可以在DSK全速執行的時 候,將DSK和個人電腦脫離。經過實 驗證明,DSK在這種情況下連續執行6 個小時也不會當機。 2. 增加內建信號產生器。讓學生不必另 外 再 接 信 號 產 生 器 , 就 可 以 擁 有 10~10000Hz,準確到 5Hz的各種函數 波型可以使用,不必費心去操作信號 產生器 ,也不必擔心信號線 接 觸 不 良,可以專心注意DSP實現離散數學 的演算結果。 3. 增加內建聲音擴大機與喇叭。不但容 易辨識多重頻率的輸出,如DTMF、電 話振鈴等,甚至,對於簡單的信號處 理時,還可以取代示波器的功效,讓 學生只使用本教具,不需要接信號產 生器與示波器,就可以直接做習題。 4. 增加8個數位輸入與8個數位輸出,以 方便學生製作簡單的人機界面。這在 原來的DSK套件來說是一件浩大的工 程,因為DSK上面完全沒有任何I/O。 5. 增加一組8位元的A/D、以及一組8位 元的D/A,以方便DSP實現FFT。 6. 增加DTMF編碼、解碼功能。 7. 增加一片小型麵包板,實驗更方便。 8. 運用FPGA,大幅縮小教具的體積。 9. 採用Flash MCU,容易擴充輔助教具 的功能。 10. 採用非破壞性的結合方式,如圖三所 示,DSK以簡易牛角接座和本計畫之 輔助教具結合,完全不需要做人任何 修改,DSK隨時可以脫離教具,恢復 其原本之功能,讓學生可以把DSK應 用在自己的專題製作上面。 有關本計畫所完成的教具,功能說明 方面請參閱圖四,成品外觀則請參閱圖 五,至於和DSK結合之後,請參閱圖六。
(三)輔助程式方面 本計畫目前製作的輔助程式共有三 個,分別可幫助學生計算正弦波產生器所 需之係數表、使用Bilinear轉換設計IIR 濾波器、以及輔助設計FIR濾波器等,有 關這三個程式的說明,已經在第一年的報 告中詳細說明,在此不再贅述。 四、 計畫成果自評 本計畫是三年期計畫的第二年,目前 已經完成教材與教具的製作。大部分教材 都已經被轉換成為pdf檔案放置在網路上 面,供學生在需要的時候,隨時下載。教 具也已經完成「量產」20台,目前已經開 始在本學期開授在大四的「數位信號處理 器實習」課程當中使用,學生的反應非常 正面。 事實上,本計畫在本學期的「數位信 號處理器實習」課程當中也做了一個小實 驗,那就是在開學的第一個月先不給本計 畫所製作出來的教材與教具,而讓學生自 行尋找教科書(只提供本報告中參考資料 所列的相關書籍的資料),一個月之後再 將本計畫所製作出來的教材公開給學生, 結果學生們共同的感覺是(1)謝謝國科會 救了他們的DSP實習。(2)這是目前他門所 看過最清楚、最好的教材。(3)做實驗時 感覺豁然開朗,得心應手。顯然,本計畫 的執行成效已經獲得高度肯定。 五、參考文獻 [1] 胡竹生、陳榮偉編著 定點數位信號 處理器應用程式設計與實驗 全華 科技圖書有限公司 [2] 吳賢財、洪正瑞、楊開南編著 DSP 入門 全華科技圖書有限公司 [3] 澎啟宗、李玉柏、管慶編著 DSP與 即時數位信號處理 儒林圖書有 限公司 [4] Texas Instruments TMS320C5X User’s Guide [5] Texas Instruments TMS320C5X DSP Start Kit User’s Guide
[6] 陳東敏、楊朝欽、林冠平、彭國賢 數位信號處理器導論 全華科技圖 書有限公司 [7] 胡竹生、陳界全 DSP原理與實作 全 華科技圖書有限公司 [8] 王逸如、陳信宏 數位信號處理器的 新利器 全華科技圖書有限公司 [9] 鍾文政、柯鴻禧 TMS320C50原理與 應用 長高企業公司 [10] 鍾 文 政 數 位 信 號 處 理 器 DSP TMS320C25原理與實用製作 長高企 業公司 [11] 林宸生、邱創乾、陳德請 數位信 號處理實務入門 高立圖書公司 [12] James H. McClellan, Ronald W.
Schafer, Mark A. Yoder "DSP First: A Multimedia Approach" Prentice-Hall Inter-national(開 發圖書公司)
[13] Vinay K. Ingle, John G. Proakis "Digital Siganl Processing Using MATLAB V.4" PWS Publishing Company
提昇電機系學生DSP實習能力 DSP實現離算數學演算結果 DSP+ 離 散 數 學 A/D D/A 輸 入 類 比 信 號 輸 出類 比 信 號 DSK(DSP Start's Kit) 信 號 產 生 器 聲 音 放 大 器 喇 叭 數 位 輸 入 數 位 輸 出 第二組A/D 第二組D/A 示 波 器 輔 助 設 備 本計畫之教具 DTMF編碼 DTMF解碼 取 樣 原 理 DSP之構造 DSK操作 DSP指令介紹 程 式 組 譯 程 式 撰 寫 規 格 模 擬 器 除 錯 數 位 頻 率 原 理 Z 轉 換 實 現 離 散 函 數 實 現 相 關 知 識 本計畫之教材 弦 波 表 Bilinear FIR係數 輔 助 程 式 本計畫 自行發展 輔助程式 圖一、DSP實習之學習流程圖
mac B2,*- ; acc=0, p=B2*(Y2), ar0=Y1
程式指令 acc <-- p+acc p <-- B2*(ar0) ar0 <-- ar0 -1 (mac B2,*-) 程式流程圖 圖二、DSP指令與對應的流程圖 圖三、DSK與輔助教具的組合說明圖 4X4 KEYBOARD DSP 麵 包 板 DSK ( D T M F 按 鍵 ) R S 2 3 2 連 線 控 制 開 關 R S 2 3 2 連 接 座 9 V A C 電 源 接 座 電 源 開 關 小 型 喇 叭 輸 出 音 量 調 整 類 比 輸 入 ( 共 三 組 ) 類 比 輸 出 ( 共 兩 組 ) 類 比 輸 出 2 調 整 信 號 產 生 器 輸 出 調 整 信 號 種 類 選 擇 顯 示 器 功 能 選 項 信 號 頻 率 粗 調 信 號 頻 率 微 調 外 部 中 斷 連 接 埠 數 位 輸 入 連 接 埠 數 位 輸 出 連 接 埠 小 型 喇 叭 圖四、輔助教具功能說明圖 圖五、輔助教具之成品照片 圖六、輔助教具與DSK結合後之照片