摘要:在“新工科”背景下,“微機系統與接口技術”作為電子通信專業的核心課程,其教學不僅要求學生掌握扎實的專業基礎知識,同時要能夠運用專業知識解決實際生活中的復雜工程問題。首先闡述了傳統課堂教學中普遍存在的問題,其次結合課程目標提出了課程的模塊化教學設計方案,按照“自上而下、化整為零”的原則,將晦澀難懂的知識點進行逐步劃分后依次突破,最后通過綜合課程設計再將知識點進行串聯。這種教學方法既可以提高學生的學習興趣,同時有利于培養學生解決問題的能力和科學探索精神。
關鍵詞:微機系統與接口技術;模塊化教學;教學設計
一、前言
隨著科學技術的飛速發展,為促進我國從工程教育大國走向工程教育強國,“新工科”建設在全國各大高校陸續展開 [1]。作為電子通信專業的核心課程,“微機系統與接口技術”課程是現代電子技術教育的重要組成部分,是電子通信專業本科生知識結構中的必修課程。然而,該課程理論知識部分具有較強的邏輯性,很多重難點內容更是晦澀難懂,使得很多學生在學習的過程中味同嚼蠟。因此,對“微機系統與接口技術”課堂進行教學改革,提高學生對課程的理解及運用能力具有重要意義。本課程旨在使學生掌握微機的基本硬件原理和匯編軟件編程技術,掌握常用計算機外圍接口芯片的工作原理和編程方式,為后續課程打下堅實的理論基礎。
通過“微機系統與接口技術”課程的學習,使學生掌握微處理器芯片的基本功能、指令系統,在構成微型計算機外圍接口芯片的同時,培養工科的邏輯思維和科學的工匠精神,塑造正確的世界觀、人生觀和價值觀。具體課程目標如下:第一,掌握微型計算機系統的基礎知識,培養學生運用基本理論、基本分析設計方法對微型計算機進行工程應用的能力。第二,能夠利用專業知識和匯編程序設計語言,培養學生對一般實際應用軟件進行匯編編程的能力。第三,能正確了解串并行通信、數據傳輸、定時器和計數器等接口芯片的基本原理和應用問題,培養學生運用微機系統中的串口知識解決復雜工程中串口通信的能力[2]。
二、教學中存在的問題
“微機系統與接口技術”課程作為通信專業的專業基礎課,在學生的整個本科專業知識學習中都起著至關重要的作用。然而,在課程的講授過程中也暴露了一些問題,主要有如下幾個方面:
(一)課程內容抽象,學生理解困難
“微機系統與接口技術”作為計算機科學與技術專業的一門核心課程,主要圍繞微處理器組成、匯編語言編程和接口技術三大板塊展開,旨在培養學生深入理解計算機硬件與軟件交互的底層機制。由于該課程內容的高度抽象性、復雜性以及知識點間的高度關聯性,使得很多習慣于應用層面編程的學生出現學習困難。
微處理器部分主要探討的是處理器的內部結構、指令集架構以及工作原理,這些內容遠離學生日常接觸的軟件應用層面,涉及復雜的數字邏輯電路和信號處理,要求學生具備扎實的電子電路基礎和邏輯思維能力。例如,如何將一條高級語言指令轉換為一系列機器可以執行的低級指令,這一過程涉及的寄存器操作、內存管理等概念,對初學者來說如同解開一道道復雜的謎題,缺乏直觀感受,難以形成深刻理解。匯編語言編程作為連接硬件與軟件的橋梁,相較于學生普遍熟悉的高級語言如C語言,其語法更為直接且貼近機器語言,但同時也更為繁瑣和晦澀。匯編語言要求程序員直接操控內存地址、寄存器等硬件資源,每一條指令都需精確到位,這種“低級”編程方式大大增加了學習難度,使得學生在編寫代碼時容易感到困惑,難以快速準確地完成任務。接口技術部分主要涉及如何讓微處理器與其他外設有效通信,不僅要求學生理解微處理器的輸入輸出機制,還需掌握各類總線協議、中斷處理等復雜概念[3]。這部分內容同樣抽象,學生難以直接觀察或通過日常生活經驗來類比學習,使得理論與實踐之間的鴻溝更加明顯。
這三大板塊的知識點相互交織,緊密相連,一旦在某個環節出現理解障礙,后續的學習就如同多米諾骨牌效應一般,一環扣一環地產生連鎖反應,造成整體學習進度的滯后。學生在面對抽象難懂的概念時,如果缺乏有效的學習策略和充分的實踐機會,很容易感到挫敗,甚至對整個學科失去興趣。
(二)理論部分與先修課程聯系緊密,學生遺忘嚴重
本課程與很多先修課程都有著緊密的聯系,這種緊密關聯性雖然有助于學生在更高層次上整合和深化已有的知識,但同時也對學生的前期學習基礎提出了極高的要求。以可編程邏輯芯片設計為例,這一章節的學習直接依托于“數字電路”課程中的數制與碼制理論,以及邏輯門電路、組合電路和時序電路的設計原理。如果學生未能牢固掌握二進制、十六進制的運算規則,或是對與門、或門、非門等基本邏輯單元的功能及復合邏輯電路的設計思路記憶模糊,那么在面對復雜的FPGA或CPLD設計時,無疑會感到一頭霧水,難以把握設計的精髓。在微處理器部分的學習過程中,不僅需要學生回憶《大學計算機基礎》中關于計算機硬件組成的基本框架,還需要在此基礎上進一步細化理解CPU、存儲器、I/O設備等組件的內部結構與工作原理。任何一處基礎知識的遺忘,都可能成為理解微處理器高級功能的絆腳石。而在講解內存地址管理時,涉及物理地址與邏輯地址的映射,直接關聯到“操作系統”課程中關于內存管理與虛擬內存的“分段”“分頁”機制。如果學生對“節”(segment)的概念理解不夠透徹,或者忘記了虛擬地址空間與實際物理內存之間的轉換邏輯,那么在探討現代操作系統如何高效管理龐大而復雜的內存資源時,就很難做到融會貫通。因此,如果學生先修課程中對應知識點存在問題或知識點遺忘,則對本課程相應的知識點也難以理解。
(三)實驗條件受限,學生實踐有限
實驗環節無疑是理論知識與實際操作相結合的重要橋梁,由于本課程使用的是1978年Intel公司推出的80x86微處理器,距離現在已經過去了四十多年。雖然80x86系列曾作為個人電腦CPU設計的基石,但隨著技術的飛速發展,市面上基于此架構的實驗設備已逐漸稀少,學生在日常生活中幾乎不可能直接接觸到相關硬件,無疑增加了學生理解和掌握這一經典系統結構的難度,使理論與實踐之間的距離被人為拉大。
更為棘手的是,根據課程設置,實驗環節僅僅分配了4個學時,對于需要大量動手操作以加深理解的工程技術課程來說,無疑是杯水車薪。如此有限的實踐時間,難以滿足學生充分探索硬件原理、動手組裝調試,乃至試錯與嘗試學習的需要。實踐不僅是驗證理論的途徑,更是發現問題、解決問題能力培養的關鍵,時間的壓縮無疑限制了學生實踐能力與創新思維的培養。
部分高校嘗試通過使用51單片機作為教學替代品,希望以此緩解實驗條件的局限性。51單片機以其相對低廉的成本、豐富的學習資料和較為簡單的編程環境成為了許多電子、計算機相關專業入門教學的首選。然而,這一替換方案雖然在一定程度上降低了硬件獲取的難度,卻沒有從根本上解決學生實踐時間不足的問題。51單片機與80x86微處理器在體系結構、指令集等方面存在顯著差異,這樣的調整可能會影響學生對原課程核心內容的深入理解,同時也可能引發教學內容與目標的偏離。
三、模塊化教學設計
(一)模塊化教學的必要性
由于“微機系統與接口技術”課程本身的復雜性和與先修課程的緊密關聯,使得學生在學習過程中容易感到迷茫和挫敗,傳統的教學方法往往難以適應這種跨學科、多層次的學習需求,并不能達到很好的效果。采用線上教學與線下教學相結合的方法雖然可以從一定程度上幫助學生理解課程知識點,但本質上還是通過延長學習時間增強學生的學習效果[4]。想要在相同的時間內取得更好的教學效果,提高效率是最直接的方法,模塊化教學便是提高教學效率的途徑之一。模塊化教學將龐大的課程內容分解為多個相互獨立又彼此關聯的知識模塊,每個模塊專注于特定的主題或技能。這樣做不僅可以幫助學生分步驟、有針對性學習,降低認知負荷,還能使教師更有針對性地評估學生在各模塊的掌握程度,及時調整教學策略,實現個性化教學。
(二)模塊化教學的特點
模塊化教學具有層次分明、重難點突出及課程連貫性好的特點。在課程設計中,按照“自上而下”的順序將課程抽絲剝繭為細小的知識點。在課堂教學中,每個章節開始的時候,首先介紹該章節的課程目標,然后按照課程目標進行模塊劃分,每個模塊知識點的講授時長大約為15分鐘。對于課程重難點的模塊,需要適當增加講授時長。例如,對于抽象的知識,設計動畫或采用類比法加深學生的理解;對于枯燥的知識,通過查閱資料在課程中增加生活中的素材或思政元素提高學生的學習興趣;講授例題時,也可以通過小組討論和師生互動,增強學生的參與感和自信心。在模塊內部,如果部分知識點關聯了前面的課程知識,則需要將前面講過的課程知識再帶領學生簡單回顧一下。此外,模塊與模塊之間也需要設計銜接的部分確保課程的連貫性。
(三)模塊化教學的實施過程
對課程的模塊化教學遵循“自上而下、化整為零”的原則。即首先將整個課程分為微機系統、匯編語言和接口技術三個大的模塊,然后再以知識點為邊界,將每個大模塊細分為若干個小模塊,最后再通過課程綜合設計將知識點進行串聯。
1.微機系統模塊
微機系統模塊作為理論學習的核心部分,其設計旨在通過細致劃分的知識模塊,幫助學生逐步深入理解微處理器的復雜世界。在“微處理器的‘前世今生’”模塊中,通過歷史視角,不僅能讓學生了解微處理器從誕生至今的演變歷程,如從早期的4位、8位微處理器到如今的多核、高性能處理器,而且通過引入豐富的網絡素材,如歷史照片、發展里程碑的時間軸、視頻訪談等多媒體資源,使學生在視覺和聽覺的雙重刺激下,更容易被吸引并保持學習熱情。這一模塊的目的是構建起學生對微處理器宏觀發展的整體認知框架,為后續深入學習奠定基礎。
“微處理器的基本原理”模塊深入技術細節,此部分是學習的重難點所在。并行流水線技術作為現代處理器提高效率的關鍵,其概念較為抽象,通過類比生活中的分工合作場景。例如,工廠生產線上的不同工人負責產品制作的不同階段,形象地解釋了取指、譯碼、執行等處理器內部操作的并行處理過程,幫助學生直觀理解這一復雜機制。內存地址管理部分則通過學生宿舍的比喻,生動展現了物理地址與邏輯地址的關系,宿舍樓號、樓層、房間號分別對應了內存地址的高位到低位,使得抽象的地址映射變得易于理解[5]。
“微處理器的組織形式”,以80x86芯片為例,深入講解其內部結構。此部分通過將寄存器和外部引腳按功能分類講解,如控制寄存器、狀態寄存器、數據寄存器等,以及引腳如何用于電源、時鐘信號、數據傳輸等,幫助學生構建起微處理器內部結構的清晰圖景。采用逐步解析的方式,從整體架構到具體細節,配以圖表、動畫演示,使學生能夠在腦海中逐步構建起微處理器的“數字宮殿”[6]。
通過這三個模塊的系統學習,學生不僅能夠掌握微處理器的基礎理論,更能理解其背后的工程設計思想與技術演進邏輯。這樣的模塊化教學方式不僅提高了學習效率,也激發了學生對微機系統更深層次探索的興趣,為他們今后從事相關領域的研究與開發打下堅實的基礎。
2.匯編語言模塊
匯編語言模塊為理論學習與實踐結合的部分,可以劃分為尋址方式、指令系統與匯編程序編寫三個分模塊。指令系統模塊還可以根據指令種類的不同再分為四個部分,分別是傳送類指令、運算類指令、串操作指令和程序控制指令四個小模塊。匯編程序編寫模塊主要圍繞一個問題展開,即如何編寫一個完整的匯編語言源程序,這里也將問題細化到偽指令語句、DOS功能調用兩個重點部分[7]。由于匯編語言與學生熟悉的C語言相比更加復雜,因此,在對每個小模塊進行講解時,可采用類比法將兩種編程語言中相似的部分進行類比。例如,同樣是進行加法運算,比較“i++”和“INC”指令的異同點,既可以提高學生的學習興趣,又加深了對知識的理解程度。
該部分的實踐環節主要表現在程序的編寫上,學生的練習包括隨堂練習、課后作業和綜合設計,要求學生按照題目分析、繪制程序流程圖、逐句翻譯的順序進行編程,同時鼓勵學生為每一條程序增加注釋。在多次練習中,幫助學生建立規范的編程方法,在程序報錯的時候協助學生通過單步調試,逐步發現問題并解決問題,從而克服學生懼怕編程、擔心出錯的心理,提高學生的分析能力和編程能力。
3.接口技術模塊
接口技術模塊按照不同的芯片功能可以直接將該部分劃分為可編程中斷8259、定時計數器8253、并行通信芯片8255和串行通信芯片8250。每個芯片的講解都按照外部引腳、內部結構、工作方式和編程這四個部分進行。這一部分的課堂教學以理論講解為主,但每一個芯片的應用也至關重要,在進行課堂理論講解時,需要將理論始終與應用相結合,針對學生理解不夠透徹的地方,如定時計數器8253工作方式怎么選擇、接口電路編程時怎么選擇端口地址,可以結合動畫、板書等為學生進行講解,旨在提高學生對芯片的理解能力,為實驗課做鋪墊。此外,該部分在進行講解之前有兩個課時的過渡,分別對輸入輸出接口和中斷機制進行講解[8]。
在實驗環節,學生經常出現程序無法運行的問題,這時要引導學生自主查找問題。首先要對接口的設計進行檢查,看是否有不規范的地方。其次對電路連接進行檢查,看是否有導線連接錯誤。最后檢查程序,在編寫程序的時候要求學生為程序添加注釋,使用單步調試方法對程序進行檢查。在每次實驗完成后,需要對實驗中出現的問題進行總結。此外,除了課程中的基礎實驗外,再增加一個大作業。例如,設計一個家庭安防報警裝置,通過設計這個裝置將80x86處理器、8259、8253及8255進行模塊重組,進一步加深學生對每個可編程芯片的理解,提高學生的實踐能力。
四、模塊化教學的成績設計
課程考核在傳統的期末考試的基礎上,增加了隨堂練習、期中測試和實驗考察。隨堂練習會在不同的模塊中嵌入合適的例題,首先讓學生自主思考,然后分組討論,最后教師針對問題進行講解,此部分占最終成績的10%;期中測試會針對匯編語言和接口部分內容,再結合學生的日常生活,要求學生完成一項簡單的功能設計,此部分占最終成績的15%;實驗部分需要學生完成串口通信8250可編程芯片和并行通信8255可編程芯片的設計,此部分占最終成績的15%;期末考試主要為判斷題、編程題和設計題,此部分占最終成績的60%。
五、結語
“微機系統與接口技術”課程作為電子通信專業中承上啟下的核心課程,一方面承接了先修課程“數字電路”中邏輯電路的知識點,另一方面為后續單片機、FPGA、DSP、ARM等可編程芯片的學習做了鋪墊。本文首先總結了傳統教學中普遍存在的問題,即由于課程存在內容抽象、前后關聯性強及實踐性強等特點,導致學生學習效果不佳。其次針對存在的問題,根據課程目標提出了基于模塊化教學的課程設計方案,按照“自上而下、化整為零”的原則,將課程進行逐層劃分,進而將課程的重難點進行抽絲剝繭,再結合設問、類比等教學方法為學生進行知識點講授。模塊化教學可以提高學生的學習興趣,加深學生對課程重難點的理解,培養學生發現問題解決問題的能力和科學探索精神。
參考文獻
[1]楊瀟.“新工科”背景下應用型大學《微機原理與接口技術》課程教學探索[J].教育教學論壇,2019(22):210-211.
[2]吳銀鋒,馮仁劍,于寧,等.“微機原理與接口技術”智慧課堂教學改革探索[J].科教文匯(上旬刊),2021,(34):94-96.
[3]方紅,葛一楠.基于學生能力培養開展微機原理及接口技術的課程教學改革[J].教育教學論壇,2018,(50):59-61.
[4]駱冰清,陳燕俐.基于MOOC的《微機原理與接口技術》教學模式研究[J].軟件導刊,2019,18(11):165-167.
[5]古麗扎提·海拉提,陳進,胡志華.微機原理與接口技術仿真及實操聯合實驗教學探究[J].上海第二工業大學學報,2020,37(03):259-263.
[6]李珍香,樊瑋.微機原理與應用技術課程中的CDIO一體化教學模式[J].計算機教育,2013(12):54-58.
[7]駱峰,陳帆,楊帆,等.以問題為導向的課程教學實踐——高職《微機原理與接口技術》課程教學改革[J].武漢工程職業技術學院學報,2017,29(04):79-81.
[8]駱峰.“微機原理與接口技術”課程教學中的PBL教學法嘗試[J].科教導刊(下旬),2016(36):117-118..
作者單位:南京工業大學
責任編輯:王穎振、楊惠娟