前言:中文期刊網精心挑選了計算機系統結構范文供你參考和學習,希望我們的參考范文能激發你的文章創作靈感,歡迎閱讀。
計算機系統結構范文1
1 計算機系統結構課程體系
計算機系統結構課程體系組又稱硬件組,普通高校計算機的學生對硬件課程都存在或多或少的抵觸心理,原因主要有3個:1)硬件課程比較抽象,不容易理解,不像軟件語言課程直觀;2)學生認為計算機專業就是編程,學習硬件課程沒有用;3)硬件課程的實驗環境不容易建立和維護,導致相關實踐環節實施時不能達到預期目標。針對計算機系統結構課程體系在教學中存在的問題,我們按照課程先修順序、社會需求,以及從理論到應用的順序,對計算機系統結構課程體系中的課程進行合理安排。
1.1 專業基礎必修課程
計算機系統結構課程體系所涉及的專業必修課程是計算機專業學生的基礎課程,通過這些課程的學習,學生將掌握計算機的基本組成和工作原理,并為計算機應用打下基礎。同時,我們也注意到,這些專業基礎課程理論性較強,內容抽象、不易理解,課程大多開設在大學階段的前期。
數字邏輯電路是計算機專業計算機系統結構課程體系的第一門課,該課程的學習目的是使學生掌握從數字系統到集成電路實現所需邏輯功能的整個過程的完整知識,作為必修課程,開設在大一第二學期。計算機組成原理是計算機專業的核心專業基礎課程,本課程使學生掌握計算機原理的基本知識,為下一步學習計算機體系結構奠定基礎,并能對當前計算機的最新研究、發展與應用趨勢有一般性的了解,作為必修課程開設在大二第一學期。匯編語言課程是解決CPU級編程的問題,使學生掌握CPU級語言的特點、編程方法和基本技能,為深入學習后續課程和從事有關計算機硬件、軟件方面的設計打下基礎,作為必修課程開設在大二第二學期的上半學期。微機原理與接口技術課程以PC機及其兼容機中最常用的80×86系列為主線,講述微型計算機與接口的實現技術,作為必修課程可與匯編語言并行開設在大二第二學期。這兩門課程安排在同一學期,有利于學生掌握。通過兩個學期的實踐,學生對匯編語言的掌握和應用,以及微機原理的接口應用能力大大提高。計算機系統結構講述計算機體系結構,著重介紹軟、硬件功能分配以及如何最佳、最合理地實現軟、硬件功能分配,作為必修課程開設在大三第一學期。
1.2 專業應用選修課程
在大三第一學期結束后,學生已學完計算機專業硬件和軟件相關基礎課程,具有一定的計算機應用和開發的能力。從大三第二學期開始,計算機系統結構課程體系將面向計算機應用開設兩門任選課程,它有利于學生就業,縮短學校到社會的過渡時間。
單片機原理及應用課程以MC-51系列單片機為基礎介紹硬件和軟件的組成,以及程序設計技能。為將來步入微計算機的信息處理和測控系統領域的學生提供一個基礎平臺,作為任選課程開設在大三的第二學期。嵌入式系統及其開發課程使學生了解嵌入式系統結構和嵌入式系統開發的相關技術,掌握其軟硬件設計方法,提高學生的嵌入式系統開發能力和經驗,建議作為任選課程開設在大四的第一學期。
2 教師團隊的建立
為了提高教學質量,提高教師教學水平,我們建立了計算機系統結構課程體系教師團隊,并為每門課程設置一名首席教師,并配備2~4名主講教師。教師團隊建立后,每星期舉行一次教學活動,提出授課中存在的問題,討論學生的接受能力,最后給出先修課程和后續課程的調整方案。實踐證明,教師團隊的成立提高了教學質量,受到廣大師生的好評,結合教學的相關教學教研項目逐漸增多。反過來,相應的教改項目的實施又促進了教學質量,形成了教學效果的良性循環。
3 教材的選擇
眾所周知,教材直接影響教學效果和教學質量。計算機系統結構課程體系抽象、難懂,其課程教材的選用一直是我校計算機專業教學中的一個重要問題。由于計算機專業的學生普遍認為自己將來的就業方向是軟件開發,所以,不重視硬件課程體系中的課程。因此,如何有效選用計算機系統結構課程體系的教材成為教學的一大難題。下面,我們以計算機系統結構為例介紹教材的選擇。
3.1 國內外同類教材優缺點
目前,國內的計算機系統結構教材主要由國內一些重點大學的專家編寫,教學對象為重點大學計算機專業本科生,同時,作為研究生的參考書。從近年我校以及我省其他普通本科院校計算機專業學生使用上述教材的效果看,這些教材存在以下一些問題,如書中理論概念過多,部分內容過時,對體系結構新進展介紹不多,上述問題導致學生缺乏學習興趣,教學效果也不理想,不太適合普通二本院校計算機專業學生使用。
3.2 自編教材情況
為了改變計算機系統結構課程教學在普通二本院校計算機專業學生中存在的上述問題,我們經過調查論證、搜集素材,并與本省其他院校協商,結合授課教師切身體會以及學生在學習本課程時遇到的普遍性問題,編寫了適合普通二本院校本科生學習的計算機系統結構教材。
自編教材《計算機系統結構》2009年7月由清華大學出版社出版,該教材在遵循教育部計算機系統結構課程教學大綱基礎上,采用“量化研究方法”,系統講述了現代計算機系統結構的基本概念、基本原理、基本結構和基本分析方法,以及當前系統結構領域的主要進展。摒棄了目前傳統教材中已經過時的理論知識,精簡了授課內容,突出了重點難點,較好地適應了普通二本院校計算機系統結構課程教學需要。
該教材內容編排大體是按照計算機系統結構的發展歷程,即馮?諾依曼體系結構一改進的馮?諾依曼體系結構――非馮?諾依曼體系結構這條線索。以經典馮?諾依曼體系結構(第2章)為基礎,介紹現代通用計算機系統結構的基本概念、基本原理、基本結構和基本分析方法以及和相關領域的最新研究成果,內容主要包括數據表示與指令系統設計(第3章)、存儲系統(第4章)、輸入輸出系統(第5章)、流水線技術(第6章)、并行處理機技術(第7章),以及計算機系統結構進展(第8章)。
參加該教材編寫的人員來自不同本科院校,均為擔任計算機系統結構課程的主講教師,該教材在著重論述體系結構的基本概念、基本原理、基本結構和基本分析方法的基礎上,強調量化的分析方法,使學生能夠能更具體、實際地分析和理解計算機體系結構。教材內容選擇上不再覆蓋整個系統結構,而是重點論述現代大多數計算機都采用的比較成熟的思想、結構和方法等,通過大量的實例分析,深入淺出地闡述計算機體系結構所涉及的各個方面內容。在結構上,強 調從總體結構、系統分析這一角度來研究計算機系統,將計算機組成原理、數據結構、操作系統、匯編語言程序設計等課程中所學的軟、硬件知識有機地結合起來,從而使學生建立起計算機系統的完整概念,教學效果良好。
4 開放式的教學模式
計算機系統結構課程體系強調培養學生的綜合能力,強調知識、能力、素質的協調發展,傳統單一的課堂知識傳授已經不能滿足學生的要求,而相關課程本身存在理論性強、抽象難懂的特點。所以,我們在傳統教學模式的基礎上提出開發式教學方式,以提高學生探究能力和學習興趣。開放式的教學模式主要包括以下4個方面內容。
1)匯聚師生共同力量,提高現代化教學介質課件的質量。
傳統的課堂教育是教學模式的基礎,在首席教師主持下,發揮教師團隊的力量,利用現代教育技術和信息技術,開發符合學生接受能力的高質量教學課件。例如,通過動畫形象生動地演繹課程中抽象難懂的概念和原理。此外,發動學生參與課程網站建設,在師生間建立互動鏈,提高學生自主學習的積極性。
2)根據先修課程內容,實施啟發式教學。
課程講授采用啟發式教學。計算機系統結構課程體系中的各門課程之間存在聯系,在授課過程中,我們要利用先修課程的內容啟發當前課程中的內容,以便于學生理解,同時,提高學生的綜合能力。例如,講授計算機系統結構中“指令集優化”章節時,先讓大家回憶匯編語言中80×86型計算機的指令集的條數,然后,提出計算機的指令條數和格式如何確定,最后,層層深入,給出計算機系統結構針對指令集研究的內容和解決方法。又如,講授計算機系統結構中操作碼優化的章節時,結合數字邏輯電路中的邏輯設計,分析不同編碼方式的優缺點和采用擴展的Huffman編碼理由,以及計算機如何辨析不同的操作碼,以便加深學生理解。
3)開展多樣化教學方式,提高學生自主學習的興趣。
從提高學生自主學習興趣出發,以課堂講授為主,采用學生講課、小組討論和專題報告等多樣化的教學方法。例如,針對計算機系統結構中現代非-馮,諾依曼結構的新發展,舉行專題報告,每個小組討論一種結構,通過參閱各種參考資料和網上資源對所分配的專題開展自主學習、交流、討論和研究,最后,各小組分別進行專題講座,多樣化的教學方式培養了學生的綜合能力和創新能力。
5 加強課程實踐環節,與社會需求接軌
計算機系統結構課程體系的實踐性很強,實踐環節是整個教學過程中的重要環節,也是學生對理論知識進行內化和升華的重要手段。然而,計算機系統結構課程體系所要求的實驗環境不易建立和維護,實驗題目不易選取。因此,大多數高校計算機系統結構課程的實踐流于形式,不能真正提高學生綜合能力和利用所學理論知識解決實際問題的實踐動手能力,也不能培養和鍛煉學生的自主開發的創新能力。針對計算機系統結構課程體系實踐環節中出現的問題,我們給出以下幾點建議。
1)調整驗證性與綜合性和開發性實驗比例。
增加綜合性和開發性實驗的比例。計算機系統結構課程體系中的所有課程都有實驗課,而大多數實驗項目為驗證性實驗,綜合性和開發性實驗項目比例較少。在實驗過程中,由于驗證性試驗的軟件和硬件為現成的,學生不能進行硬件的設計,同時,又沒有能力進行軟件的編寫,大部分學生將實驗當做任務來完成,創新能力得不到發揮。因此,在驗證性實驗的基礎上,我們要加大綜合性和開發性實驗的比例,最大程度地發揮學生自己的能動性。
2)結合教學內容,選取實際對象作為項目來源。
增加綜合性和開發性實驗的比例必須有適合學生開發的實驗項目。如果實驗項目過難,學生將失去做實驗的信心;如果實驗項目偏容易,實驗就失去了其綜合性和開發性的本質;因此,項目應來源于生產活動,是相對完整和相對獨立的事件,與企業實際生產過程或現實使用有直接的關系,具有一定的應用性。例如,設置單片機實驗項目――“聲控燈”,既能將理論知識和實踐技能結合在一起,又能調動學生解決問題的興趣。
3)以學生為主體,充分發揮教師的協助作用。
在教學過程中,要充分發揮學生的主動性和創新精神,讓學生根據自身行為的信息來實現自我反饋,同時,也不能忽略教師的指導作用。例如,在項目的選取上,師生要共同參與,教師要啟發學生去主動發現身邊的素材,選擇難度適合的實驗項目。
6 結語
通過兩個學期的實踐,我校計算機系統結構課程體系教學取得了良好的教學效果,首先,從學生角度看,將計算機底層的硬件基礎課放在大學生在校教育的前期,有利于學生掌握基本原理和基本知識;應用性強的課程放在后期,有利于學生與社會需求的接軌。其次,從教師角度看,將計算機系統結構課程體系的教師組織起來建立教師團隊,有利于教學效果的提高,便于教改活動的組織。適當的教材選取,可以調動學生的學習積極性。同時,優質的教學課件和多形式的教學模式,將課堂教學變得生動、形象,把過去的“重教輕學”的教學模式轉向“師生互動”的教學模式。將學生被動聽講的課堂變為鼓勵學生主動參與討論,引導學生積極探索,以提高學生素質。最后,實踐環節的改革能使學生將硬件課程內容融會貫通,合理的實驗項目設置充分調動學生學習的積極性。
[1]李彩虹,屈志毅,劉剛,等.“計算機組成原理”實驗課教學模式探討與實踐[J].高等理科教育,2006(2):74-75.
[2]張軍利.微機原理課程教學中開放性實驗的作用和意義[J].云南大學學報:自然科學版,2008(2):437-438.
計算機系統結構范文2
關鍵詞:計算機系統結構;多核;FPGA
隨著計算需求的不斷增長,由于復雜的芯片工藝與功耗成本限制,處理器的性能提升從原有的主頻提高轉為多內核發展。很快,一些大型機制造廠商,如IBM、Sun開始利用并行計算設計出了多核處理器(例如:IBM推出的CELL異構多核處理器,Sun公司推出的OpenSparc T1開源多核處理器[1]),這些處理器在一塊芯片上集成多個計算內核,成倍地提高了計算速度。2006年,以Intel與AMD為代表的處理器制造商在年初和年底相繼推出雙核、四核處理器,緊接著,在2007年1月,Intel展示了配置兩個四核處理器的八核計算機,這標志多核處理器開始全面進入市場,宣告計算機真正進入多核時代。
所謂“多核(Multi-core)”,即指一塊芯片上集成多個處理核,各自擁有獨立的控制和計算部件,無需共享關鍵資源。多核技術的發展給大學計算機教育帶來新的課題,即在多處理器環境下,計算機系統結構、計算機操作系統、編譯原理和應用軟件的編程模型等都發生了很大的變化,促使大學計算機的教學需要做出針對性的變化。
計算機系統結構(Computer Architecture),作為研究計算機系統結構演化以及影響計算機硬件與軟件系統設計的一門重要課程,在介紹計算機系統結構原理、分析設計方法、性能評價、發展趨勢和新的實現技術上,需要增加多核技術這個重要的新知識點。在過去相當長的一段時間里,由于不具備開設計算機系統結構和多核技術相關實驗的硬件平臺和軟件環境,
國內很多高校開設計算機系統結構課程時均未開設該課程的實驗,特別是多核技術方面的實驗,以至于學生沒有實驗教學和體驗式實踐而很難掌握該課程的知識。
為了更好地應對新的“多核”時代,電子科技大學的計算機科學與工程學院、信息與軟件工程學院(原示范性軟件學院)從2007年開始在計算機系統結構課程教學中引入多核技術。一是在理論教學上增加處理器體系結構、系統架構和程序設計內容,從三個方面給學生展現了一個比較完整的多核技術概覽圖景;二是在實驗平臺建設上設計多核實驗,從實踐環節上來鍛煉學生的動手能力和提升其創新能力。
1實驗教學的現狀
在計算機系統結構課程中設計多核實驗,須從計算機系統結構與多核知識的課堂教學成果入手,把握多核技術的理論教學動態。然后重點調查國內高校在多核實驗教學方面的研究現狀,為計算機系統結構中的多核技術實驗設計提供必要的技術支持和可行性研究。
事實上,計算機系統結構課程重在培養計算機專業本科生的抽象思維能力、自頂向下系統分析和創新能力。全國重點和普通高校中幾乎都開設了這門課程,出現了大量的課程教學與教研成果[2-12]。雖然課程教學成果多,但是實驗教研成果小,而且還缺乏多核知識點的引入或多核體系更新不足。
作者簡介:于永斌,男,副教授,研究方向為計算機系統結構、大規模集成電路設計與應用。
關于多核技術,清華大學的王小鴿[13]提供了理解多核技術、并行計算與未來計算機發展的視角。薛巍[14]從并行計算基礎、高性能計算前沿技術研討課、多線程/多核CPU邏輯設計短期課程等方面介紹了清華大學多核課程建設成果。吳繼雁[15]簡要地分析與總結了多核技術及發展趨勢。北京交通大學計算機學院的劉近光和梁滿貴[16]介紹了基于MIPS體系結構的多核處理器特點。浙江大學的陳天洲等[17-21]介紹了多核程序設計課程和進行了多核精品課程建設探索與實踐,并主持了教育部骨干教師多核技術培訓,對多核技術的教學科研做出了很大的貢獻。武漢大學電子信息學院的楊劍鋒等[22]介紹了“多核架構及編程技術”這一教育部-Intel精品課程建設成果。北京工業大學計算機學院的方娟[23]探討了多核教學內容和教學模式。與這些多核技術的教學成果相比較,由于多核硬件實驗平臺與軟件環境的難構造,使得多核技術方面的實驗研究成果特別少。根據作者的可查文獻,中山大學教學實驗中心的程小雄和伍麗華[24]進行了基于FPGA的多核技術課創新實驗探索,介紹了在現場可編程門陣列(FPGA,Field Programmable Gate Array)芯片和SoPC(片上可編程系統)、NOIS-II等工具軟件所組成的軟硬件平臺下,開展多核技術課程創新實驗的研究;并在新組成的多核系統中,移植和擴展了µC/OS-II操作系統,還設置了相關的實驗環境和若干實驗項目,對提高學生的綜合實驗能力具有積極的作用。
通過對計算機系統結構和多核技術課堂教研與實驗教學動態的充分調研,我們不難得到多核技術在國內課堂與實驗教學中的實施狀況,雖有新增多核課程或修改原有課程(如:計算機系統結構、高級計算機體系結構或高等計算機系統結構)的教學內容,但較少涉及多核技術方面的實驗教學?;谶@樣的背景,在計算機系統結構中設計多核實驗,這對學生的實驗能力和綜合素質提高具有特別重要的作用。
2多核實驗的設計
在計算機系統結構課程中設計多核實驗,需要把握多核本質和其技術要點。多核的本質是為了解決高性能計算和并行計算問題,它在硬件和軟件兩個方面改變了傳統的計算機系統結構。由此,多核技術的發展使得計算機系統結構的教學發生了變化,這種變化主要來自于多核技術所帶來的新知識點。多核技術所涉及的知識點可歸納為硬件和軟件兩個方面,具體如下:
1) 多核硬件方面的知識點。
(1) 多核下的硬件設計技術,包括Cache與存儲一致性、網絡互聯、IO管理;
(2)多核芯片與傳統單核微處理器的區別,多核SoC(System on a Chip)芯片技術;
(3) 嵌入式多核芯片技術以及典型多核芯片:Cell、OpenSparc、Intel雙核芯片、AMD雙核芯片等;
(4) 并行體系與多核體系結構、多核平臺結構與芯片組支持技術。
2) 多核軟件方面的知識點。
(1) 多核操作系統、多核系統軟件對并行編程的支持、多核API優化函數庫,多核平臺上編譯工具;
(2) 多線程編程對多核的支持,Windows/Linux多核多線程編程技術;
(3) OpenMP多線程編程及性能優化,MPI (Message Passing Interface)編程及性能優化;
(4) 多核多線程程序的性能評測方法與工具。
基于上述的多核知識點,聯系計算機系統結構原有實驗,可在硬件平臺和多核軟件工具上設計多核實驗。
多核實驗,包括兩個方面的實驗內容。一是在FPGA芯片上設計多個同構或異構處理器內核,并進行操作系統的移植,最終做出一個可實際運行的多內核計算機系統;通過該實驗,可增長學生對實驗的興趣,更深刻理解多核技術的知識點。二是Windows/Linux多核多線程編程實驗,利用多核軟件工具進行編程;在Windows平臺下,利用Win32API、MFC或.Net Framework提供的接口來實現;若在Linux平臺下,利用IEEE POSIX標準定義的API進行多線程編程。對于綜合設計,可設計為學生課外的有關多核技術設計、實驗或發展趨勢調研的課程設計、創新設計或畢業設計,訓練學生面對實際應用問題的綜合分析、方案設計、多種程序設計結構的綜合使用和實際工程問題的綜合解決能力。
在計算機系統結構中設計多核實驗,希望達到如下目標。
1) 設計多核實驗,發展計算機系統結構課程教學與實驗實踐內容,按照Intel多核技術大學合作計劃[25],實現高校與Intel的合作;
2) 理解普適的多核思想和硬件設計理念[26, 27],普及并行計算技術,使廣大的本科生能在以后的程序設計與開發中可以發揮多核計算優勢;
3) 通過多核實驗,強化計算機專業本科生和未來的科研人員的實驗動手能力,激發興趣愛好
和創造潛能,幫助他們更有效地開展進一步的科研工作。
3結語
計算機系統結構中多核實驗的嘗試性設計,旨在教學實踐中不斷完善和創新,充分體現多核技術的革命。應用FPGA技術設計多核實驗,是一種培養學生創新能力的嘗試,一種引導學生從感性上理解多核技術內涵的實驗創新,有利于促進計算機系統結構課程在多核時代的發展。
參考文獻:
[1] David L. Weaver. OpenSPARCTM Internals[Z]. Sun Microsystems Inc,2008(10):1-36.
[2] 張晨曦,劉依. 探索新的教學模式和方法,建設計算機系統結構精品課程[J]. 計算機教育,2007(12):103-106.
[3] 張晨曦,王志英,劉依,等. 計算機系統結構課程內容體系的研究[J]. 計算機教育,2009(20):57-60.
[4] 吳曉華,徐潔,王雁東,等. 計算機系統結構課程教學探討[J]. 實驗科學與技術,2006(6):67-70.
[5] 王華,徐潔,王雁東,等. 計算機系統結構課程改革與探索[J]. 計算機教育,2009(10):15-17.
[6] 徐潔,王華,吳曉華, 等. 淺析SPEC基準測試程序集及評價指標[J]. 實驗科學與技術,2010(6):21-24.
[7] 王志英,李宗伯,錢程東,等. “計算機體系結構”國家精品課程的特色與建設經驗[J]. 計算機教育,2007(4):27-28.
[8] 姜晶菲,肖儂,王志英,等. “計算機體系結構”課程建設及改革思考[J]. 計算機教育,2009(18):3-5.
[9] 王志曉,夏戰國,王凱. “計算機組織與體系結構”教學改革與探索[J]. 福建電腦,2009(2):213-214.
[10] 曲大鵬,薛建生,范鐵生. 啟發式教學法在計算機系統結構教學中的應用[J]. 遼寧大學學報,2010(3):218-220.
[11] 童小念,何秉嬌,舒萬能. 計算機系統結構實踐教學環節的研究與實施[J]. 計算機教育,2008(3):66-68.
[12] 舒萬能,童小念,何秉嬌. 計算機系統結構實踐教學體系研究[J]. 科技信息,2009(5):5-6.
[13] 王小鴿. 關于多核技術的幾點思考[J]. 程序員,2006(9):56-58.
[14] 薛巍. 多核課程建設[J]. 計算機教育,2007(6):40-43.
[15] 吳繼雁. 多核技術及發展趨勢[J]. 哈爾濱軸承,2007(28):57-58.
[16] 劉近光,梁滿貴. 多核多線程處理器的發展及其軟件系統架構[J]. 微處理機,2007(1):1-3.
[17] 陳天洲,曹捷, 王靖淇. “多核程序設計”概述[J]. 計算機教育,2007(7):39-41.
[18] 陳天洲,劉蘇明. 教育部骨干教師培訓課程設計:多核技術[J]. 計算機教育, 2007(10):65-67.
[19] 陳天洲. 多核課程建設探索與實踐[J]. 計算機教育,2007(2):51-55.
[20] 陳天洲,王靖淇,劉蘇明. 從“教育部-英特爾精品課程”評審看大學對多核技術的課程改革[J]. 計算機教育, 2007(6):37-39.
[21] 陳天洲. 多核精品課程建設與拓展[J]. 計算機教育,2008(1):61-62.
[22] 楊劍鋒,田茂,謝銀波. “多核架構及編程技術”課程建設[J]. 計算機教育,2007(12):82-83.
[23] 方娟. 多核技術在“高級計算機體系結構”課程中的引入與探討[J]. 計算機教育,2008(20):41-42.
[24] 程小雄,伍麗華. 基于FPGA的多核技術課創新實驗探索[J]. 實驗室研究與探索,2008(27):3-5.
[25] 英特爾軟件學院. 辭舊迎新繼往開來持續推進“英特爾多核技術大學合作計劃”[J]. 計算機教育,2009(2):119.
[26] Kunle Olukotun,Lance Hammond,James Laudon. Chip Multiprocessor Architecture:Techniques to Improve Throughput and Latency[M]. San Rafael:Morgan & Claypool Publishers,2007:1-141.
[27] Ahmed Amine Jerraya,Wayne Wolf. Multiprocessor Systems on Chips[M]. San Fransisco:Morgan Kaufmann Publishers, 2005:357-392.
Multi-core Experiment Design of Computer Architecture
YU Yongbin, XU Jie, WANG Hua, ZHANG Fengli, LIAO Jianming, ZHOU Shijie
(Computer Science and Engineering College, University of Electronic Science and Technology, Chengdu 610054, China)
計算機系統結構范文3
關鍵詞:DLX模擬器;WinDLX;DLXView;流水技術
一、引言
計算機系統結構是計算機科學與技術專業的一門骨干課程,也是最重要的專業基礎課程之一。本課程強調從總體結構、系統分析的角度來研究計算機系統。通過本課程的學習,使學生理解計算機系統的內部工作原理,以及在硬件、軟件界面劃分的權衡策略,建立完整的、系統的計算機軟硬件整體概念[1]。本課程理論性較強、教與學難度較大。課程中講授的許多內容,諸如指令流水線、向量計算、流水線相關、并行計算、定向技術等內容比較抽象,使學生無論在學習還是理解方面都會有一定的難度,從而影響到學生的學習興趣和教學效果。國外高校在本課程的教學和實驗中,已普遍采用DLX模擬器進行分析和測試。因此,采用理論教學與實踐教學緊密結合的方式,對該課程教學方法進行研究和改進,將能夠幫助學生增進對課程學習內容的理解,提高獨立思考問題和解決問題的能力,并將對提高教學質量和教學效果起著極為重要的作用。
二、DLX模擬器
DLX是貫穿本課程的一個流水線處理實例,課程中的許多討論、模擬結果和例題都是基于DLX的。它不僅體現了當
今多種機型指令集結構的共同特點,而且還體現未來一些機型的指令集的特點[2]。DLX模擬器用軟件模擬DLX流水線的工作過程,有運行于Windows和Linux操作系統的不同版本,可以靈活、方便地設置參數、控制執行和統計數據,并提供了直觀的窗口顯示。
經過測試比較,采用基于Windows系統的WinDLX和DLXView模擬軟件,它們對環境要求較低,易于實現。本文介紹WinDLX和DLXView兩種模擬軟件在計算機系統結構課教學實驗中的應用。
三、WinDLX模擬器實驗應用
WinDLX的主窗口中有六個圖標,點擊將彈出子窗口。分別為寄存器子窗口(Register),代碼子窗口(Code),流水線子窗口(Pipeline),流水線時空圖子窗口(Clock Cycle Diagram),統計子窗口(Statistics) 和斷點子窗口(Breakpoints)。如圖1所示。利用這些子窗口可以完成結構相關、數據相關和指令調度等實驗。
以數據相關實驗為例,介紹WinDLX流水線時空圖子窗口和統計子窗口的作用。在不采用定向技術的情況下(通過Configuration菜單中的Enable Forwarding選項設置),用 WinDLX模擬器運行程序,記錄數據相關引起的暫停時鐘周期數以及程序執行的總時鐘周期數,計算暫停時鐘周期數占總執行周期數的百分比。如圖2所示。流水線時空圖子窗口中的箭頭是相關引起的流水暫停。
在采用定向技術的情況下,用WinDLX模擬器運行相同的程序,記錄數據相關引起的暫停時鐘周期數以及程序執行的總時鐘周期數,計算暫停時鐘周期數占總執行周期數的百分比。如圖3(略)。
統計子窗口的對比數據如表1所示。從中可以進行定量地分析,看到定向技術對增強流水性能、提高CPU運行效率所起的作用。
利用WinDLX模擬軟件可以進行熟悉DLX指令、結構相關、數據相關和指令調度等實驗,使學生對DLX指令集以及流水線技術、相關、指令調度等重點難點內容有深一步地理圖2定向前流水時空圖和數據統計解,進而開展研究性工作。
數據相關暫停時鐘周期數總時鐘周期數所占比例定向前10420251.48%定向后3012823.44%
四、DLXVieW模擬器實驗應用
DLXview是一個圖形化、交互式的DLX流水線仿真器[3,4]。該模擬器能夠實現對基本流水線,記分牌算法和Tomasulo算法的模擬。通過對內存訪問延遲、功能部件的數目、功能部件的延遲的配置,實現不同的流水線的模擬。該模擬器使用的是DLX指令集描述的計算機體系結構,執行DLX匯編語言程序,指令在流水線中執行的過程能以圖形的方式表示出來,還能得到流水線操作周期的統計信息。DLXview對流水線的理解和對處理器性能的評價對我們很有幫助。
用DLXView模擬基本流水線,能觀察到流水線時空圖、各流水段狀態以及流水線的數據通路。有兩種圖形界面:圖4是基本流水線框圖,圖5是基本流水線數據通路圖。
圖4基本流水線框圖圖5基本流水線數據通路圖記分牌技術是系統結構學習中的難點之一。其學習的目的是掌握在資源充足時,盡可能早地執行沒有數據阻塞的指令,達到每個時鐘周期執行一條指令。如果某條指令被暫停,而后面的指令與流水線中正在執行的或被暫停的指令不相關,那么這條指令可以繼續流出并執行下去。記分牌電路負責記錄資源的使用,并負責相關檢測,控制指令的流出和執行[5]。用DLXView模擬記分牌算法,可直觀地觀察到程序運行過程中指令狀態表和功能部件狀態表的變化,并可以調整設置DLX處理器的基本結構。模擬運行界面如圖6(略)。
Tomasulo算法將記分牌的關鍵部分和寄存器換名技術結合在一起,其基本核心是通過寄存器換名來消除寫后寫和先讀后寫相關可能引發的流水線阻塞。其基本思想是:只要操作數有效,就將其取到保留站,避免指令流出時才到寄存器中取數據,這就使得即將執行的指令從相應的保留站中取得操作數,而不是從寄存器中取得。指令的執行結果也是直接送到等待數據的其他保留站中去。因而,對于連續的寄存器寫,只有最后一個才能真正更新寄存器中的內容。一條指令流出時,存放操作數的寄存器名被換成為對應于該寄存器保留站的名稱(編號)[5]。用DLXView模擬Tomasulo算法可觀察指令狀態表、保留站信息、DLX浮點部件結構圖。模擬運行界面如圖7(略)。
5.結束語
WinDLX和DLXview可以靈活、方便地設置參數、控制執行和統計數據,并提供了直觀的窗口顯示;對基本流水線,記分牌算法和Tomasulo算法有直觀形象的模擬;能幫助理解較抽象的概念,如指令流水線、向量計算、流水線相關、并行計算、定向技術等。模擬器對流水線的理解,以及處理器性能的評價對我們有較大幫助。經教學實踐檢驗,具有較好的應用效果。
參考文獻:
[1]張晨曦,劉依,張春元.《計算機體系結構》網絡課程[EB/OL].http://sse.tongji.edu.cn/arch_course/index.htm.2005.
[2]張晨曦,王志英,張春元,等.計算機體系結構[M].北京:高等教育出版社.2003:3.
[3]DLXview主頁[EB/OL].202.38.79.66/ca/dlxview/index.html.
[4]國外大學計算機體系結構網站[EB/OL].cs.wisc.edu/~arch/www/.
計算機系統結構范文4
關鍵詞:綜合電子系統;嵌入式計算機體系;結構
中圖分類號:TD672文獻標識碼:A文章編號:1007-9599 (2010) 06-0000-01
Integrated Electronic System Embedded Computer Architecture
Feng Lipei
(The State Administration of Radio Film and Television 723 Radio,Shijiazhuang050086,China)
Abstract:As the modern electronic information technology development and innovation and electronic information technology application of the areas of diversification of integrated electronic computer system,and embedded in the military,a smart appliance,the digital machine tools,
refrigerators and other areas of electronic devices are widely used. this article by a brief analysis and study electronics and computer system to embedded systems architecture to meet the new generation of integrated electronic computer systems for performance of the embedded application requirements.
Keywords:Integrated electronic systems;Embedded computer system;Structure
一、綜合電子系統嵌入式計算機的特點
綜合電子系統嵌入式計算機是嵌入到對象體系中的專用計算機,其物理結構和功能都嵌入到應用系統中,不能脫離系統操控程序而獨立運行。進入21世紀以后,綜合電子系統嵌入式計算機在軍事上得到了廣泛的推廣與應用,同時在智能家電、數字機床、車載電子設備等生活領域也得到不少的應用,為人類的發展注入了全新的科技動力。綜合電子系統嵌入式計算機的特點,主要表現在以下幾方面:
(一)實時性
綜合電子系統嵌入式計算機直接從前端傳感器獲取信息和資料,進行實時或近實時的操控處理和技術分析,因此,綜合電子系統嵌入式計算機對信息的處理、分發和管理的實時性要求極高。
(二)與宿主系統相匹的性能與功能
綜合電子系統嵌入式計算機是宿主系統的主要組成部分,其體積、重量、形狀、性能等諸多數據參數必須滿足各種宿主系統的不同技術性要求,其功能性與技術性必須與宿主系統的水平相適應,符合技術應用的科學發展方向。[1]
(三)環境的可靠性和適應性
綜合電子系統嵌入式計算機被大量應用于工業、軍事、野外等惡劣環境中,要經受振動、輻射、鹽霧、高低溫、電磁干擾等經驗,對可靠性要求極高。傳統綜合電子系統嵌入式計算機的體系結構設計主要根據嵌入式系統的應用特點進行剪裁。[2]綜合電子系統嵌入式計算機采用模板化結構,但是總線帶寬和擴展能力有限,不具備動態重構、數據信號綜合處理等功能。
二、綜合電子系統嵌入式計算機的體系結構
嵌入式系統是現代電子信息技術、計算機技術和半導體技術,以及各個行業具體應用相結合的產物。因此,嵌入式系統是一個資金密集、技術密集、高度創新、不斷創新的知識集成系統。綜合電子系統嵌入式計算機體系結構的核心部件是處理器,系統結構較為復雜。
圖1 綜合電子系統嵌入式計算機的體系結構
(一)嵌入式微控制器
嵌入式微控制器將整個計算機系統集成到一塊芯片中,芯片內部集成RAM、ROM/EPROM、總線邏輯、總線、定時/定時器,WatchDog、串行口、D/A、A/D、Flash RAM、EEPROM等各種基礎功能和外設。為了適用綜合電子系統嵌入式計算機不同的體系結構和功能需求,一般一個系列的單片機具有多種衍生產品,每種衍生產品的處理內核體系結構都是相近的,不同的存儲器和外設的配置及封裝。[3]這種體系機構可以使單片機最大限度地和應用需求相匹配,功能不多不少,從而減少功耗和成本。目前,世界通用的嵌入式控制器型號主要有:P51XA、8051、C166/167、MCS-96/196/296、MC68HC05/11/12/16等。
圖2 嵌入式微控制器結構圖
(二)嵌入式微處理器
嵌入式微處理器是綜合電子系統嵌入式計算機的CPU,在實際應用中,微處理器被裝配在專門設計的電路板上,只是保留和嵌入式應用的相關母版功能,這種體系結構可以最大幅度減少系統的體積和能源消耗。[4]嵌入式微處理器具有重量輕、體積小、可靠性高、成本低等優點,其體系結構的電路板上必須包括:總線路接口、各種外線器件、RAM、ROM等,技術保密性相對較強。目前,世界主要應用的嵌入式微處理器主要有:386EX、Power PC、SC-400、MIPS、68000、ARM等系列。
圖3嵌入式微處理器結構圖
(三)嵌入式片上系統
近年來,隨著EDI的推廣和VLSI設計的普及化,綜合電子系統嵌入式計算機體系結構中一個硅片上實現一個更為復雜的全新計算機系統,也可以稱之為SOC。嵌入式片上系統一般可以分為通用和專用兩類,通用系列包括Infineon的TirCore,Motorola的M-Core;專用系列包括Philips的Smart XA等。
圖4嵌入式片上系統
計算機系統結構范文5
Abstract:This article is for the purchase of the micro-computer system solutions for problems encountered by the study. Through needs analysis, specification systems, purchasing skills, models and accessories to do a targeted note describes. To reduce and avoid in the purchase process, due to information asymmetries and process defects caused by loss.
關鍵詞:品牌計算機 兼容計算機 選購
Keywords: Brand computers Compatible computers Purchase
作者簡介:張衍志(1982-),男,四川工程職業技術學院講師,專業方向:計算機應用
2009年全球電腦銷量至2.57億臺,同年中國計算機(臺式和便攜式)消費超過2500萬臺。在選購過程中,因為知識了解不足、市場不規范,常造成選購困難,往往不能買到稱心如意的產品。本文通過引入通過需求分析,規范系統等選購技巧,減少和避免在選購過程中,由于信息不對等和流程缺陷造成的損失。本文對微型計算機選購系統化的解決方案進行了探討分析。
一、兼容機優缺點分析
1.1兼容機優點
1.1.1 性價比高
減少了中間環節,沒有了品牌機廠商的宣傳、人力、財務等成本。大大降低了產品的總價。消費者可以以最接近市場價格購買產品,兼容機性價比較品牌機高。
1.1.2 人性化量身定制、自由發揮空間大
消費者通過需求分析,充分了解自己購買的產品的應用范圍,性能情況,以及價格預算。量身打造符合自己要求的計算機。
對于計算機發燒友,兼容機可以滿足升級、超頻需求。甚至,可以做到水冷降溫、液氮冷卻降溫等極致超頻。發燒友還可以自己打造HTPC,將計算機、電視、網絡3者合一,實現家電的信息化。
1.2兼容機的缺點
1.2.1 購買時,知識儲備很重要,涉及諸多購物陷阱
市場相對不夠規范。假貨、翻新、以次充好的現象還普遍存在。市場上最為消費者認可的正品行貨的假冒情況也非常多,買到的常常是沒有質量保證的“水貨”。
更有甚者,商家利用消費者對配件的不了解,慫恿更換配件型號,品牌。消費者由于信息的不對稱,花了大價錢,買到的卻性低價的產品。
1.2.2 售后服務跟不上
市場中存在相當一批的走私,仿冒產品,這些產品只能通過賣家進行質保。一旦商家撤柜,售后無法保證。即使是正品產品,商家撤柜后,也存在找渠道商和生產廠商困難的問題。以硬盤為例,品牌機硬盤、盒裝正品硬盤質保時間短則3年,長則5年。而兼容機賣家一般提供的都是走私來硬盤,俗稱“水貨”,這些硬盤只有店鋪提供1年質保。
二、購買兼容機程序的問題
2.1兼容機裝機時一些系統化、程序化的問題
在選購計算機時應該把握一下幾個原則:
1)確定配置方案的原則
2)滿足使用要求的原則
3)質量至上的原則
4)性價比優先的原則
5)整體和諧的原則
6)發展的眼光對待升級
2.2知識儲備
2.2.1.計算機基礎知識
最為重要的是了解計算機硬件基本常識,對計算機硬件發展趨勢有所把握,掌握基本選購技巧。特別是新技術、新參數加以了解。一次選購的過程,很大程度是一次知識的比拼。不想被商家欺瞞,最好的方法就是掌握更多的計算機常識。
2.2.2.實地走訪,市場與理論存在差異
實地采購時,往往會遇到,市場供應的商品與自己理想中選購的存在差異的情況。在二級城市,經濟不發達地區這種情況更加突出。所以,應該針對市場所能提供配件合理調整選購清單。另外,可以通過“新蛋”、“京東”等網絡商城進行彌補性采購。
三、實際購買
3.1硬件選購的幾個原則
1)不要隨意改動配置,不要盲目聽信宣傳,多做幾手準備
2)配置單談判技巧,單項價格與整體價格對比。在市場上貨比三家
3)配置單要詳細,事無巨細的將型號,品牌、質保甚至重要參數一一羅列
4)洞察市場,抓住時機。一般節假日會有較多的促銷活動,但市場價格起伏也較大。
5)收好票據,作為質保依據。
3.2設備驗收
1)交了定金不是萬事大吉,防范以舊換新,以次充好,中途調換等“奸商”伎倆。
2)進行測試。對顯示器壞點,CPU、顯卡、主板、內存的兼容性進行初步測試。
四、結論
對于有精力、有能力、愛專研的的消費者建議購買兼容機,畢竟可以節省大筆開支,發揮自由度也比較大。兼容機在購買前對自己購買的預算、用途、機器性能等因素結合本文提到的原則做綜合的考慮,將需求放在首位。
參考文獻:
[1] 喬治?謝夫勒(George Shiffler). Gartner:2009年全球電腦銷量將下滑11.9% ..
計算機系統結構范文6
關鍵詞:數據結構;多線程;VC++;動態演示
中圖分類號:TP312文獻標識碼:A文章編號:1009-3044(2011)31-7685-03
Demonstrate System Based on VC++ for Data Structure Algorithm
SHEN Li-min
(Computing Center of the PLA University of Foreign Languages, Luoyang 471003, China)
Abstract: In view of the characteristic of data structure, on the analysis of insufficiency and limitation for traditional teaching method. How to illustrate algorithm performing process to the studuentsin a simple way becomes vital to the teaching of this course. Based on the reansons above, a teaching platform demonstrating the processing of algorithm has been designed and presented in this paper. This algorithm demo system to display a variety of programming languages to achieve a variety of algorithms and dynamic process, has the image of the interface, clear display of the various algorithms realize the process. The system is friendly, easy to use, it serves to the study of the student as well as the teacher's teaching.
Key words: data structure; multhread; VC++; dynamic demonstrate
數據結構是計算機專業的核心課程,對各類算法的理解是課程教學的重點和難點,算法動態演示系統作為輔助教學過程的手段可以有效幫助學生更快的理解、掌握算法。在教學過程中能加以計算機輔助教學,不僅可以提高教學效果,而且能夠激發學生濃厚的學習興趣并加強其編程能力,本系統采用多線程技術來實現數據結構算法的算法動態演示設計,實現了源代碼跟蹤、變量跟蹤、模擬動態效果的算法演示系統。
1 數據結構定義
1.1 抽象數據類型迷宮
為了便于介紹,本文以迷宮求解為例。
ADT Seek{
數據對象:
D={ai,j|0
數據關系:R={ROW,COL}
基本操作:
InitSeek(&M,a,row,col)
初始條件:二維數組a[row+2][col+2]已存在,其中自第1行至第row+1行,每行中自第1列至第col+1列的元素已有值,并且以值0表示通路,以值1表示障礙。
操作結果:構成迷宮的字符型數組,以空白字符表示通路,以字符‘磚墻’表示障礙,并在迷宮四周加上一圈障礙。
Seek(int k,int x,int y,BOOL &succ)
初始條件:布爾型變量succ為fause。
操作結果:若迷宮M中存在一條通路,則按以下規定改變迷宮M的狀態:根據布爾變量succ的值來判斷有無路徑可走。
PrintSeek(M)
初始條件:迷宮M已存在。
操作結果:以字符形式輸出迷宮。
} ADT Seek[1];
1.2 整體框架
本程序包含三個模塊
1)棧模塊――實現棧抽象數據類型
2)迷宮模塊――實現迷宮抽象數據類型
3)主程序模塊:
void mian()
{ 初始化;
Do{
接受命令;
處理命令;
}while(命令!=“退出”);
}
2 動態系統的設計
2.1 多線程技術
系統的核心部分是動畫演示、變量跟蹤和源代碼同步的實現,對于每一個算法的演示都要求實現這部分,數據結構算法動態演示的關鍵技術多線程技術
多線程(Muhithread)是指程序含有多個執行流。多線程機制允許單個程序通過建立多個并行執行的線程來完成各自的任務。這些并行執行的線程可以執行相同的代碼,也可以執行不同的代碼[2]。
在dotNET類庫中,System.Threading命名空間下包含了各種線程組件、接口來幫助程序員使用C#編寫多線程程序。在這個命名空間中最重要的就是Thread類,它是C#多線程程序設計的基礎。Thread類提供了創建線程、控制線程的方法,它主要有以下幾種重要的成員[3,6]:
啟動線程:Start()
終止線程:Abort()
線程休眠:Sleep()
掛起線程:Suspend()
恢復線程:Resume()
2.2 具體的線程設計
AlgorithmThread.//用戶自定義線程
{//類成員變量聲明處
public AlgorithmThread()
{//構造函數體
} //類AlgorithmThread的構造函數
public void Run(){//定義線程體,以實現自定義線程類AlgorithmThread的功能
int i;String str;
for(i=0;i
{
str="Stepumber"+i.ToString()+"executed";
Thread.Sleep(500);
}
}
}
主程序中建立和啟動線程:
public class mainForm
{ public delegate
void DelegateStep(int s);
public void startAlgorithmThread()
{ m_algotithmThread=new
Thread(newThreadStart(this.ThreadFunction));
//創建線程實例
m_algotithmThread.Start();//啟動線程,即調用ThreadFunction線程函數
}
private void ThreadFunction()
{ /線程函數
AlgorithmThread algorithmThread;
algorithmThread=new AlgorithmThread();
algorithmThread.run();//調用AlgorithmThread的run函數,執行線程體
}}
2.3 實現思路
數據結構算法演示系統采用Windows應用程序項目來創建,在算法演示系統的主頁上有啟動各個算法的按鈕,通過這些按鈕啟動每個算法演示界面,該界面有幾個主要區域,每個區域對應一個組件[4-5]。
主窗口:包括標題欄和工具欄,用來實現系統控制。
動畫演示區:以圖形和動畫的方式模擬和顯示算法執行的過程和結果。
源代碼區:用來顯示類C語言編寫的算法描述,為了更清楚地描繪算法的執行過程,當程序運行到當前行時,用一條高亮度光帶罩住此語句,表示該語句被執行。
變量當前值顯示區:由控件ListView實現,負責當前演示算法的重要參數及變化值的顯示。
3 實驗設計與結果分析
實驗分別從算法進行動態模擬、代碼同步跟蹤來形象直觀地反映算法的設計思想與動態過程,圖1是迷宮求解算法求解過程。
3.1 算法動態模擬
本文利用多線程技術實現算法動態模擬演示,對一個具體的算法演示子模塊,須滿足執行、暫停、速度可調、任意時刻復位并能重新執行等復雜切換控制功能,從圖1可以看到,菜單區有自動執行、單步執行、擇暫停所得到的效果,從圖1的動畫顯示區和變量區看到算法執行的過程。如圖2中(a)是迷宮這種數據結構的初始化,(b)是隨機生成的迷宮。
3.2 代碼同步跟蹤
本文AlgorithmThread線程負責執行迷宮求解算法,而在主窗口中需要同步顯示被執行到的源代碼行和該行代碼中涉及到變量的當前值的獲取和顯示,這涉及到多線程間的同步和交互的問題。如圖3所示藍色的橫條表示算法執行到到位置,結合圖1和圖3可以清楚看到代碼的同步跟蹤情況。
4 結論
本文是基于VC實現的數據結構算法動態演示系統,采用了多線程技術,對算法進行動態模擬、代碼同步跟蹤,可以形象直觀地反映算法的設計思想與動態過程,便于加深學習者對算法的理解和掌握。
參考文獻:
[1] 嚴蔚敏,吳偉民.數據結構[M].北京:清華大學出版社,2008.
[2] Nagel C,Evjen B,Glynn J,et al.C#高級編程[M].李敏波,譯.4版.北京:清華大學出版社,2006.
[3] Schneider G,Winters J P.用例分析技術[M].姚淑珍,李巍,譯.北京:機械工業出版社,2002.
[4] 劉懷亮,陳榮國,呂國華.軟件組建技術[M].北京:冶金工業出版社,2007.