第一篇:柘榮縣氣象局溫室小氣候系統(tǒng)的設(shè)計開發(fā)論文
引言
柘榮縣地處福建省東北部,縣境內(nèi)峰巒起伏,河床陡峻,地勢呈東高西低。山地面積514.85平方千米,占全縣總面積的93.1%,平均海拔600米左右。臺風(fēng)、暴雨、寒潮、霜凍、大風(fēng)、雷電等災(zāi)害性天氣尤為常見,屬于福建省暴雨中心之一。由氣象原因引起的山洪、泥石流、山體滑坡、坍塌等地質(zhì)災(zāi)害、農(nóng)作物病蟲害和森林火災(zāi)的發(fā)生發(fā)展較為嚴(yán)重。氣象災(zāi)害及其引發(fā)的次生災(zāi)害造成的農(nóng)業(yè)損失占當(dāng)?shù)亟?jīng)濟(jì)總損失的大部分。
為了進(jìn)一步推進(jìn)柘榮縣氣象局氣象為農(nóng)服務(wù)能力,依托石山洋千畝現(xiàn)代農(nóng)業(yè)示范園中氣象為農(nóng)服務(wù)示范基地的建設(shè),柘榮縣氣象局應(yīng)地制宜在示范大棚內(nèi)建設(shè)溫室小氣候系統(tǒng),通過該系統(tǒng)可以實(shí)現(xiàn)對大棚內(nèi)的溫度、濕度、地溫、太陽總輻射、光合有效輻射、二氧化碳濃度等氣象要素進(jìn)行24小時不間斷的監(jiān)測,同時結(jié)合室外的10要素自動氣象站的觀測,通過內(nèi)外數(shù)據(jù)的對比觀測,科學(xué)分析及時準(zhǔn)確發(fā)布各類氣象為農(nóng)信息,指導(dǎo)菜農(nóng)合理追肥、及時澆水和科學(xué)通風(fēng),為農(nóng)戶提供精細(xì)化氣象服務(wù),為各類藥材、名貴花卉及蔬菜瓜果的生長發(fā)育提供準(zhǔn)確的第一手氣象資料,以最佳的生長環(huán)境來提高各類農(nóng)作物的質(zhì)量和產(chǎn)量。系統(tǒng)整體架構(gòu)
2.1 系統(tǒng)網(wǎng)絡(luò)結(jié)構(gòu)
MAWS800-GC溫室小氣候站是監(jiān)測溫室(如農(nóng)業(yè)大棚、農(nóng)氣溫室、生態(tài)溫室等)小氣候氣象要素的自動氣象站。觀測的要素有環(huán)境溫濕度、光量子、日照時數(shù)等氣象參數(shù),又可根據(jù)需求定制其他測量要素,如冠層溫度、溫室氣體、土壤濕度等,測量高度一般不超過2米。通過無線GPRS和有線光纜通訊至對應(yīng)的監(jiān)控后臺中心,由于該示范大棚距離縣氣象局較遠(yuǎn),所以我們采用無線GPRS方式,將采集到的各個報文數(shù)據(jù)傳輸?shù)綄幍率袣庀缶滞饩W(wǎng)收集服務(wù)器,系統(tǒng)的整體架構(gòu)如下:
2.2 技術(shù)路線
該系統(tǒng)選用的技術(shù)路線如下:
⑴系統(tǒng)環(huán)境:數(shù)據(jù)庫服務(wù)器操作系統(tǒng)選擇WINDOWS SERVER 2008系統(tǒng)。
⑵數(shù)據(jù)庫:Oracle 10g;
⑶數(shù)據(jù)采集:通過外網(wǎng)或是GPRS網(wǎng)絡(luò),將監(jiān)控到的各類氣象要素信息傳送至市氣象局的數(shù)據(jù)收集服務(wù)器中;
⑷開發(fā)語言:系統(tǒng)采集同步程序采用C/S構(gòu)架,開發(fā)語言采用Delphi,服務(wù)器端采用B/S架構(gòu),開發(fā)語言采用java;
⑸采用展現(xiàn)層、業(yè)務(wù)邏輯層、中間層、數(shù)據(jù)層分離的多層架構(gòu),降低系統(tǒng)模塊與模塊之間的耦合性,保證系統(tǒng)的穩(wěn)定性、可擴(kuò)展性和可移植性;
⑹數(shù)據(jù)傳輸方式:GPRS網(wǎng)絡(luò)、英特網(wǎng);
⑺支持WEB SERVICE數(shù)據(jù)服務(wù)接口。
2.3 數(shù)據(jù)庫設(shè)計
由于需要對數(shù)據(jù)進(jìn)行實(shí)時的前臺顯示,而采集到的數(shù)據(jù)又是以報文的形式保存在服務(wù)器中,所以我們選用ORACLE 10G做為后臺存儲數(shù)據(jù)庫軟件,Oracle構(gòu)建在強(qiáng)健和可靠的系統(tǒng)結(jié)構(gòu)上,能夠滿足各種苛刻需求。它具有在線索引構(gòu)建、在線索引合并、在線表重組/重定義、閃回查詢、沉寂數(shù)據(jù)庫、塊級介質(zhì)恢復(fù)、增量備份與恢復(fù)、在線備份與恢復(fù)、并行備份與恢復(fù)、透明應(yīng)用故障切換、高級隊列、分布式事務(wù)處理、數(shù)據(jù)倉庫、數(shù)據(jù)挖掘、商業(yè)智能等高級特性,為構(gòu)建各種應(yīng)用系統(tǒng)提供了強(qiáng)有力的支持。
另外,Oracle提供了Oracle Real Application Clusters。它通過使用集群硬件配置為任何套裝或定制應(yīng)用提供了無限可伸縮性和高可用性,同時又具有單一系統(tǒng)映像的簡單性和易用性。Oracle Real Application Clusters支持從集群系統(tǒng)配置中的多個節(jié)點(diǎn)訪問單一數(shù)據(jù)庫,從而將應(yīng)用和數(shù)據(jù)庫用戶與軟硬件故障隔離開來,同時提供了隨硬件環(huán)境一同擴(kuò)展的性能。
Oracle 10g平臺包括了數(shù)據(jù)庫服務(wù)器、應(yīng)用程序服務(wù)器、工作流服務(wù)器、電子郵件服務(wù)器、目錄服務(wù)器、門戶服務(wù)器、無線服務(wù)器等,提供的是一套完整和集成的解決方案,適合于任何類型的應(yīng)用程序的開發(fā)與部署。
溫室小氣候系統(tǒng)主要監(jiān)控的要素為:
⑴溫度(℃):60cm空氣溫度,1m空氣溫度,⑵地面溫度(℃):地表溫度,5CM地溫,10CM地溫,15CM地溫,20CM地溫,⑶濕度(%):60cm濕度,1m濕度,⑷土壤濕度(%):10CM土壤濕度,20CM土壤濕度,30CM土壤濕度
⑸太陽輻射:總輻射(W/㎡),總輻射極大(W/㎡),總輻射極大時間,總輻射累計(MJ/㎡)
⑹光合輻射:光合有效輻射(W/㎡),光合有效輻射極大值(W/㎡),光合有效輻射極大值時間,光合有效輻射累計(MJ/㎡)
⑺二氧化碳(ppm):二氧化碳最高濃度,二氧化碳最高濃度時間二氧化碳最低濃度,二氧化碳最低濃度時間
所以在數(shù)據(jù)庫建立表WS_FEATURE。
WS_FEATURE表用來存儲HUATRON@ MAWS800-GC溫室小氣候站的各種觀測要素值,表的內(nèi)容及格式大致如下:
2.4 入庫程序設(shè)計
利用DELPHI語言,編寫入庫程序,對報文內(nèi)的各個要素值進(jìn)行解析入庫,并實(shí)時監(jiān)控報文文件夾下的文件,如有新的文件進(jìn)入,則啟動監(jiān)視器,對文件中的各個要素進(jìn)行解析。
數(shù)據(jù)運(yùn)行監(jiān)控包括以下兩個部分:
⑴數(shù)據(jù)采集監(jiān)控:根據(jù)數(shù)據(jù)源文件生成的頻率,對數(shù)據(jù)采集中數(shù)據(jù)的遲到、未到進(jìn)行監(jiān)控。如果數(shù)據(jù)遲到、未到,則程序做相應(yīng)的報警提示。
⑵數(shù)據(jù)異常值監(jiān)控:如果站點(diǎn)數(shù)據(jù)有異常,例如數(shù)據(jù)在時間段內(nèi)出現(xiàn)數(shù)據(jù)過大、過小或者是無數(shù)據(jù)時,則程序做相應(yīng)的報警提示。
數(shù)據(jù)已文本的形式傳輸?shù)綌?shù)據(jù)收集服務(wù)器中,每10分鐘收集一個文本文件,文件中的內(nèi)容包含時間、氣象要素值以及峰值出現(xiàn)的時間,根據(jù)各個要素值之間的空格編寫數(shù)據(jù)要素的抽取,并寫入相應(yīng)的ORACLE數(shù)據(jù)庫表中。
2.5 前臺軟件開發(fā)
通過開發(fā)“柘榮氣象為農(nóng)服務(wù)終端系統(tǒng)”,將該APP軟件應(yīng)用在安卓系統(tǒng)的移動終端或者是平板電腦中,利用該系統(tǒng)調(diào)取數(shù)據(jù)庫中WS_FEATURE表,可實(shí)現(xiàn)異地查看示范大棚內(nèi)的各個氣象要素值,如要素值出現(xiàn)異?;蚴浅^閥值時,該數(shù)值變?yōu)榧t色。
該系統(tǒng)還整合雷達(dá)圖、云圖、臺風(fēng)路徑、鄉(xiāng)鎮(zhèn)實(shí)況、雨晴溫度、預(yù)警信號等內(nèi)容為一體,為鄉(xiāng)鎮(zhèn)及縣政府各級快便捷的查看各類氣象信息提供了快速通道,同時為各類防災(zāi)減災(zāi)提供了科學(xué)的依據(jù)。結(jié)束語
溫室小氣候系統(tǒng)的建設(shè)及氣象為農(nóng)終端系統(tǒng)的開發(fā),使得柘榮縣種植大戶能夠在異地實(shí)時查看到大棚內(nèi)的各個氣象要素值,同時柘榮縣氣象局在室外也建設(shè)了十要素的自動氣象站一套,通過內(nèi)外數(shù)據(jù)的收集對比,實(shí)現(xiàn)各個農(nóng)作物物候期的對比研究,對日后的科研收集各類氣象要素值,為柘榮的氣象為農(nóng)服務(wù)做出更大的貢獻(xiàn)。
參考文獻(xiàn)
周榮雙.溫室小氣候環(huán)境模型的應(yīng)用及綜述.農(nóng)機(jī)化研究.2011.祁宦.設(shè)施農(nóng)業(yè)小氣候技術(shù)服務(wù)系統(tǒng).農(nóng)業(yè)氣象與生態(tài)環(huán)境.2003.
第二篇:體育競賽管理與編排系統(tǒng)的設(shè)計與開發(fā)論文
摘要:為了對高校的體育競賽進(jìn)行高效、完善的管理,使用VisualStudio2008進(jìn)行網(wǎng)站開發(fā),C#作為后臺開發(fā)語言,采用SQLServer2005建立和維護(hù)后臺數(shù)據(jù)庫,ASP.NET技術(shù)實(shí)現(xiàn)系統(tǒng)的開發(fā),采用三層架構(gòu)設(shè)計并實(shí)現(xiàn)了一個體育競賽管理與編排系統(tǒng)。本系統(tǒng)能夠?qū)崿F(xiàn)高校體育競賽與編排的自動化管理,有效地解決了傳統(tǒng)方式的費(fèi)時、費(fèi)力、不完善等問題,具有簡單、科學(xué),易于使用的優(yōu)點(diǎn)。
關(guān)鍵詞:競賽管理;ASP.NET;SQLServer
1引言(Introduction)
我校的排球、足球、籃球等競賽的組織和管理目前全部是手工完成的。從報名到賽事編排,及后期的成績處理公布都比較繁瑣,需要花費(fèi)大量的資源、人力和時間。還會出現(xiàn)裁判、場地臨時變動等特殊情況,也會影響比賽的進(jìn)行。因此有必要開發(fā)一個使用計算機(jī)來進(jìn)行數(shù)據(jù)處理的高效、科學(xué)、完善的運(yùn)動會競賽管理與編排系統(tǒng),能夠進(jìn)行在線報名、比賽分組、賽事自動編排、計分及成績處理,網(wǎng)上成績公布等功能。本系統(tǒng)基于排球比賽進(jìn)行開發(fā),后續(xù)將逐步添加其他各類競賽管理模塊。不僅為高校各類競賽的成功舉行提供技術(shù)支持,而且可以鍛煉我們的動手能力,提高我們的學(xué)習(xí)興趣。
2系統(tǒng)需求分析(Systemrequirementanalysis)
在任何系統(tǒng)的開發(fā)過程中,最重要和最先完成的階段就是需求分析[1]。需求分析應(yīng)該首先和用戶進(jìn)行充分的溝通,確切掌握用戶的要求,結(jié)合實(shí)際的情況來確定最終系統(tǒng)所要實(shí)現(xiàn)的功能模塊。最終生成系統(tǒng)說明書,不但是系統(tǒng)開發(fā)的標(biāo)準(zhǔn),而且還是最終驗(yàn)收的主要依據(jù)。本系統(tǒng)通過對我校運(yùn)動會的整個流程進(jìn)行詳細(xì)的調(diào)查,對運(yùn)動會的各個環(huán)節(jié)進(jìn)行深入地分析,明確了運(yùn)動會的各項(xiàng)要求。結(jié)合我校的實(shí)際需求,做一個能實(shí)際應(yīng)用的排球競賽管理系統(tǒng)。由于排球比賽與其他運(yùn)動項(xiàng)目相比最大的特點(diǎn)是比賽中場上運(yùn)動員必須輪轉(zhuǎn),即通常所說的六個輪次,因此在系統(tǒng)設(shè)計時需要考慮如何體現(xiàn)排球比賽中的位置輪轉(zhuǎn)。并且在最后的查詢中可根據(jù)需要對雙方各輪次的技戰(zhàn)術(shù)發(fā)揮情況進(jìn)行查詢,對比賽成績的錄入與顯示等??梢杂行岣吲徘蚋傎愋畔⒐芾硭剑瑴p少人力和工作量,提高學(xué)校工作質(zhì)量和效率,促進(jìn)學(xué)校的科學(xué)化管理。
3系統(tǒng)總體設(shè)計(Systemoveralldesign)
3.1系統(tǒng)功能設(shè)計
高校體育競賽管理與編排系統(tǒng)的用戶可以是參賽單位、運(yùn)動員及系統(tǒng)管理員,主要實(shí)現(xiàn)對整個賽事的管理,可以實(shí)現(xiàn)在線報名,成績統(tǒng)計及公布等功能。該系統(tǒng)主要的功能有用戶基本信息的管理、公告信息管理、比賽項(xiàng)目管理、在線報名、相關(guān)賽程的管理、秩序冊的上傳、下載的管理、體育競賽使用的表格管理、最終的比賽成績的管理以及對系統(tǒng)進(jìn)行管理的相關(guān)模塊,本系統(tǒng)的功能結(jié)構(gòu)圖如圖1所示。
3.2數(shù)據(jù)庫設(shè)計
本系統(tǒng)選用SQLServer2005為數(shù)據(jù)管理軟件。SQLServer為結(jié)構(gòu)化數(shù)據(jù)和關(guān)系型數(shù)據(jù)提供了安全可靠的存儲功能,可以管理和構(gòu)建用于業(yè)務(wù)的可靠性高和性能高的數(shù)據(jù)應(yīng)用程序[2]。系統(tǒng)包含的數(shù)據(jù)表主要有參賽部門表、隊員信息表、項(xiàng)目信息表、賽事表、裁判表、用戶表、參賽隊伍表、成績表、角色表等多個數(shù)據(jù)表。其中參賽部門表主要有參賽單位編號、參賽單位名稱、領(lǐng)隊、領(lǐng)隊電話、聯(lián)系人、聯(lián)系人電話等字段,其中參賽單位編號為主鍵。參賽隊伍表主要有參賽隊伍編號、隊伍名稱、隊伍人數(shù)、隊伍分組、參賽單位編號等字段,其中參賽隊伍編號為主鍵。隊員信息表主要有隊員編號、姓名、學(xué)號/工號、性別、電話、隊長、所在單位、所在隊伍等字段,其中隊員編號為主鍵。
4系統(tǒng)實(shí)現(xiàn)(Systemimplementation)
本系統(tǒng)利用VisualStudio2008+IIS+SqlServer的技術(shù)設(shè)計符合賽事管理要求的競賽信息管理系統(tǒng),開發(fā)語言是C#,數(shù)據(jù)庫訪問接口是ADO.NET。使用ASP.NET分層模型實(shí)現(xiàn)系統(tǒng)的開發(fā),ASP.NET是一種基于網(wǎng)絡(luò)的編程語言,它使用面向?qū)ο蟮姆绞絹韯?chuàng)建動態(tài)的網(wǎng)絡(luò)程序[3]。本系統(tǒng)可以實(shí)現(xiàn)高校體育競賽管理的各大主要功能,對用戶的計算機(jī)操作技能要求低,操作起來很方便、易于上手;本系統(tǒng)采用B/S架構(gòu),不用安裝客戶端軟件,使用瀏覽器就可以完成在線報名、安排場次、成績公布等功能,很快、很容易地舉辦競賽,不需要計算機(jī)專家維護(hù)系統(tǒng),可以節(jié)省人力,減輕勞動強(qiáng)度,從而降低成本,節(jié)省開支。
5系統(tǒng)運(yùn)行結(jié)果(Systemoperationresult)
打開項(xiàng)目信息管理模塊的界面,單擊比賽項(xiàng)目管理項(xiàng)目更新按鈕,即可打開項(xiàng)目管理頁面,可以添加或刪除項(xiàng)目,還可以查詢所有項(xiàng)目的信息,如圖2所示。秩序成管理運(yùn)行結(jié)果如圖3所示,可以根據(jù)指定運(yùn)動員的報名表以及個人、團(tuán)隊的比賽情況,從數(shù)據(jù)庫中得到數(shù)據(jù),下載到Word中,還可以上傳,并且秩序冊可以實(shí)現(xiàn)自動生成。
6結(jié)論(Conclusion)
系統(tǒng)是從實(shí)現(xiàn)我校競賽管理自主化、智能化的實(shí)際需求出發(fā),采用MicrosoftVisualStudio2008為前臺開發(fā)工具,用SQLServer2005為后臺數(shù)據(jù)庫,使用ASP.NET和C#語言設(shè)計并實(shí)現(xiàn)高校體育競賽管理與編排系統(tǒng)的開發(fā),通過該系統(tǒng)可以實(shí)現(xiàn)網(wǎng)上報名,秩序冊生成與導(dǎo)出,大賽簡介與賽事公告,場次安排,成績錄入與導(dǎo)出等功能。本系統(tǒng)功能完善,操作簡單便捷,實(shí)現(xiàn)了高校運(yùn)動會的智能化管理。通過本次系統(tǒng)開發(fā)和設(shè)計,一方面使我們學(xué)會按照軟件開發(fā)的規(guī)范掌握一般web應(yīng)用軟件開發(fā)的基本過程、基本技術(shù)和方法,增強(qiáng)實(shí)踐動手能力;另一方面使我們掌握最新的軟件技術(shù)平臺,加深對所學(xué)知識的鞏固,提高創(chuàng)新能力和專業(yè)素質(zhì),體驗(yàn)軟件開發(fā)的真實(shí)感受,為將來的工作打下堅實(shí)的基礎(chǔ)。
參考文獻(xiàn)
[1]吳文秋.基層運(yùn)動競賽管理系統(tǒng)的設(shè)計與實(shí)現(xiàn)[J].產(chǎn)業(yè)與科技論壇,2014(13):30-34.[2]劉勇.SQLServer數(shù)據(jù)庫管理[M].北京:清華大學(xué)出版社,2012:178-204.[3]李曉強(qiáng).高職院校學(xué)生體育競賽組織與管理研究[J].遼寧高職學(xué)報,2012(14):20-23.
第三篇:職工工資管理系統(tǒng)的設(shè)計與開發(fā)論文開題報告
一、工資管理系統(tǒng)的目的和意義
在中原大化儀表公司是一家省屬大型企業(yè)分支單位,隨著社會主義市場經(jīng)濟(jì)的快速發(fā)展,該公司下在發(fā)生著日益的變化,職工流動速度在加快,工資增減幅度在加大,員工,職稱,績效評定等信息也隨之越來越多 ,作為工資管理和發(fā)放單靠傳統(tǒng)的手工處理已顯得力不從心,手工發(fā)放需要反復(fù)進(jìn)行抄寫,計算,不僅浪費(fèi)時間,還常因抄寫不慎出現(xiàn)張冠李戴,或者由于計算疏忽,出現(xiàn)工資發(fā)放錯誤的現(xiàn)象.同時工資的發(fā)放具有較強(qiáng)的時間限制,必須嚴(yán)格按照公司規(guī)定的時間完成任務(wù).正是這種重復(fù)性,規(guī)律性,時間性,使得工資管理的計算機(jī)化成為可能.使用計算機(jī)進(jìn)行工資發(fā)放,不僅能夠保障工資核算無誤,快速輸出,而且還可以利用工資數(shù)據(jù)庫對有關(guān)的各種信息進(jìn)行統(tǒng)計,服務(wù)于上級財務(wù)部門的核算與賬務(wù)處理.從而提高工資管理發(fā)放的效率,實(shí)現(xiàn)企業(yè)員工工資管理的系統(tǒng)化,規(guī)范化和自動化.二、計所達(dá)到的要求,技術(shù)指標(biāo),預(yù)計的技術(shù)關(guān)鍵,技術(shù)方案和主要實(shí)驗(yàn)研究情況
1、預(yù)計達(dá)到的要求:
此系統(tǒng)要求做到設(shè)計合理,便于使用,易于操作;界面友好,容錯性高,可在很短的時間內(nèi),查找出所需的職工工資資料,提高工作效率.2、技術(shù)指標(biāo)
(1)開發(fā)環(huán)境:visual foxpro6.0
(2)運(yùn)行環(huán)境:windows9x/windowsXX3、技術(shù)關(guān)鍵:
采用foxpro編程思想,利用其強(qiáng)大而完整的功能開發(fā)這樣一套職工工資管理軟件,其主要技術(shù)有:foxpro數(shù)據(jù)庫技術(shù),新類的設(shè)計與應(yīng)用,系統(tǒng)容錯性的處理,組合查詢技術(shù)的實(shí)現(xiàn)等.4、技術(shù)方案和主要實(shí)驗(yàn)研究情況:
(1)開發(fā)職工工資管理系統(tǒng)
(2)職工工資管理系統(tǒng)的數(shù)據(jù)庫結(jié)構(gòu)設(shè)計與實(shí)現(xiàn)
(3)職工工資管理系統(tǒng)的具體實(shí)現(xiàn)
三、課題研究進(jìn)展計劃:
9月28號:畢業(yè)設(shè)計選題
10月10號:開題報告撰寫
10月19號:對開題報告進(jìn)行改進(jìn)
10月29號:對系統(tǒng)整體設(shè)計
11月15號:中期報告
12月21號:論文撰寫
12月28號:系統(tǒng)檢查
1月4號: 論文答辯
四、現(xiàn)有在條件,人員(姓名,職稱)及主要設(shè)備情況
已有軟件:microsoft visual foxpro 6.0,winXX平臺
設(shè)計人員:樊利清
主要設(shè)備:計算機(jī)(intel pentium 4)一臺,激光打印機(jī) 一臺
五、參考文獻(xiàn)
(1)開發(fā)使用手冊 人民郵電出版社
(2)數(shù)據(jù)庫系統(tǒng)概論 高等教育出版社
(3)個人電腦實(shí)用基礎(chǔ)教程 寧杭出版社
(4)數(shù)據(jù)庫系統(tǒng)及應(yīng)用基礎(chǔ) 北方交通大學(xué)出版社
(5)數(shù)據(jù)結(jié)構(gòu) 中央廣播電視大學(xué)出版社
(6)操作系統(tǒng)工程 中央廣播電視大學(xué)出版社
六.指導(dǎo)教師評語
成績(滿10分).
第四篇:人事管理系統(tǒng)的設(shè)計(開發(fā))(精選)
人事管理系統(tǒng)的設(shè)計(開發(fā))
目錄 1.功能概述
2.開發(fā)背景及意義
3.軟件環(huán)境
3.系統(tǒng)層次結(jié)構(gòu) 設(shè)計階段類圖
6.軟件具體功能說明,界面說明(表單說明)
7.體會及優(yōu)缺點(diǎn)分析
人事管理系統(tǒng)的設(shè)計(開發(fā))
1.功能概述
人事工資管理系統(tǒng)是不可缺少的部分,它的內(nèi)容對于其的決策者和管理者來說都至關(guān)重要,所以人事工資管理系統(tǒng)應(yīng)該能夠?yàn)橛脩籼峁┏渥愕男畔⒑涂旖莸牟樵兪侄?。人事工資管理系統(tǒng)的主要任務(wù)就是使用計算機(jī),對所有公司成員的人事檔案資料進(jìn)行保存;在需要時進(jìn)行查找、分類、統(tǒng)計或者增加、修改和刪除等操作;可以針對不同的目的,對各種檔案資料進(jìn)行查詢。
2.開發(fā)背景及意義
隨著計算機(jī)技術(shù)、網(wǎng)絡(luò)技術(shù)和信息技術(shù)的發(fā)展,現(xiàn)在辦公系統(tǒng)更趨于系統(tǒng)化、科學(xué)化和網(wǎng)絡(luò)化。網(wǎng)絡(luò)辦公自動化系統(tǒng)是計算機(jī)技術(shù)和網(wǎng)絡(luò)迅速發(fā)展的一個辦公應(yīng)用解決方案,它的主要目的是實(shí)現(xiàn)信息交流和信息共享,提供協(xié)同工作的手段,提高辦公的效率,讓人們從繁瑣的有紙辦公中解脫出來?,F(xiàn)在許多的機(jī)關(guān)單位的人事管理水平還停留在紙介質(zhì)的基礎(chǔ)上,這樣的機(jī)制已經(jīng)不能適應(yīng)時代的發(fā)展,因?yàn)樗速M(fèi)了許多人力和物力,在信息時代這種傳統(tǒng)的管理方法必然被計算機(jī)為基礎(chǔ)的信息管理所取代。
本系統(tǒng)就是基于本公司的人事管理而設(shè)計的,是對公司的人事資料進(jìn)行管理,為人事管理人員提供了一套操作簡單、使用可靠、界面友好、易于管理和使用的處理工具。本系統(tǒng)對人事各種數(shù)據(jù)進(jìn)行統(tǒng)一處理,避免數(shù)據(jù)存取、數(shù)據(jù)處理的重復(fù),提高工作效率,減少了系統(tǒng)數(shù)據(jù)處理的復(fù)雜性。本系統(tǒng)不僅使公司人事管理人員從繁重的工作中解脫出來,而且提高了人事管理的效率,提高了人事管理的科學(xué)性,方便了用戶查詢、管理人員進(jìn)行管理。
3.軟件環(huán)境
服務(wù)器端要求如下:
操作系統(tǒng):Windows 2000 Server 數(shù)據(jù)庫:Mircrosoft SQLserver2005
開發(fā)工具:Microsoft Visual Studio 2005 4.系統(tǒng)層次結(jié)構(gòu)
HIPO圖是IBM公司發(fā)明的“層次圖加輸人/處理/輸出圖”的英文縮寫。它既可以描述軟件總的模塊層次結(jié)構(gòu)H圖(層次圖),又可以描述每個模塊輸入/輸出數(shù)據(jù)/處理功能及模塊調(diào)用的詳細(xì)情況IPO圖(也稱IPO表)。HIPO圖以模塊分解的層次性以及模塊內(nèi)部輸入、處理、輸出三大基本部分為基礎(chǔ)建立的。
本系統(tǒng)的最頂層的矩形框代表人事工資管理系統(tǒng)的主控模塊,調(diào)用下層模塊以完成全部管理功能;第二層的每個模塊控制完成系統(tǒng)的一個主要功能,如此實(shí)現(xiàn)自頂向下逐步求精。
H圖只說明了系統(tǒng)由那些模塊組成及其控制層次結(jié)構(gòu),并未說明模塊間的信息傳遞及模塊內(nèi)部的處理。因此對一些重要模塊還必須根據(jù)H圖繪制具體的IPO表。用戶和管理人員可利用IPO表編寫、修改和維護(hù)程序。IPO表中包含的附加信息主要有系統(tǒng)名稱、圖的作者,完成的日期,本圖描述的模塊的名字,模塊在層次圖中的編號,調(diào)用本模塊的模塊清單,本模塊調(diào)用的模塊的清單、注釋以及本模塊使用的局部數(shù)據(jù)元素等。
信息查詢的上層調(diào)用模塊為人事管理,沒有下層模塊可調(diào)用,信息查詢的IPO表如表4.1所示。
表4.1 信息查詢的IPO表
系統(tǒng)名稱:人事工資管理系統(tǒng) 模塊名:信息查詢 模塊編號:2.1 上層調(diào)用模塊:人事管理 輸入數(shù)據(jù):要查詢的人事信息
設(shè)計者:楊凌霄 日期:2009-10-20
下層被調(diào)用的模塊:無 輸出數(shù)據(jù):查詢得到的結(jié)果
處理:根據(jù)查詢的信息判斷庫中是否有相應(yīng)的記錄,如果有則顯示查詢的結(jié)果
修改信息的上層調(diào)用模塊為人事管理,沒有下層模塊可調(diào)用,修改信息的IPO表如表4.2所示。
表4.2 修改信息的IPO表
系統(tǒng)名稱:人事工資管理系統(tǒng) 模塊名:修改信息 模塊編號:2.3 上層調(diào)用模塊:工資管理
設(shè)計者:楊凌霄 日期:2009-10-20
下層被調(diào)用的模塊:無
輸入數(shù)據(jù):填寫要修改的信息 輸出數(shù)據(jù):對數(shù)據(jù)庫的更新結(jié)果
處理:判斷修改信息的合法性,修改成功后顯示更新的結(jié)果
5設(shè)計階段類圖
在系統(tǒng)分析階段,已經(jīng)找出了主要的概念類和類的方法、類間的關(guān)系。到了系統(tǒng)設(shè)計階段,需要從軟件系統(tǒng)的角度來重新設(shè)計類圖。分析階段的類到了設(shè)計階段有的可能變成一組類,有的可能消失。
分析階段的類圖主要是用來描述現(xiàn)實(shí)世界中的問題;而設(shè)計階段的類圖主要是對解決方案進(jìn)行描述。因此設(shè)計階段的類圖描述了軟件的系統(tǒng)結(jié)構(gòu)。創(chuàng)建設(shè)計類圖的過程包括以下幾步:
1.識別設(shè)計階段出現(xiàn)的類,為這些類添加屬性和方法。2.建立類間關(guān)系,最終完成對屬性和方法的細(xì)節(jié)描述。系統(tǒng)設(shè)計階段的類圖如圖4.2所示。
圖4.2 系統(tǒng)設(shè)計階段的類圖
數(shù)據(jù)庫設(shè)計
數(shù)據(jù)庫概念設(shè)計
1.考評管理信息表:用于保存員工考評管理基本信息 2.員工檔案信息表:用于保存員工檔案的詳細(xì)信息 3.員工工資信息表:用于保存員工工資的詳細(xì)信息 4.獎罰管理信息表:用于保存獎罰管理信息 5.調(diào)動管理信息表:用于保存員工的調(diào)動管理信息 數(shù)據(jù)庫邏輯設(shè)計
用戶信息表是用來存放管理員的詳細(xì)信息的數(shù)據(jù)表,里面存有不同級別的用戶,可以在系統(tǒng)中實(shí)現(xiàn)不同的功能操作,內(nèi)容如表3.3所示。
表4.3 考評管理信息表
字段名
ID PID Pname Pdep PKpcontent PKpResult PKpscore PKpPeople PKkDate
類型
int varchar varchar varchar varchar varchar int varchar dateime
長度 10 10 10 20 10 4 10 8
主鍵否
主鍵 否 否 否 否 否 否 否 否
描述
系統(tǒng)編號 員工編號 員工姓名 員工部門 考評內(nèi)容 考評結(jié)果 考評分?jǐn)?shù) 考評人 考評日期
員工檔案信息表:用于保存員工檔案的詳細(xì)信息,內(nèi)容如表3.4所示。
表4.4 員工檔案信息表
字段名
id employeeID employeeName employeeSex employeeDept employeeBirthday employeeNation
類型
int varchar varchar varchar varchar datetime varchar
長度 10 10 2 10 8 10
主鍵否
主鍵 否 否 否 否 否 否
描述
系統(tǒng)編號 員工編號 員工姓名 員工性別 員工部門 員工生日 員工民族
employeeMarriage employeeDuty employeePhone employeeAccession employeePay
varchar varchar varchar datetime decimal 10 11 8 9
否 否 否 否 否
婚姻狀況 職務(wù)名稱 聯(lián)系電話 就職日期 基本工資
員工工資信息表:用于保存員工工資的詳細(xì)信息,內(nèi)容如表3.5所示。
表4.5 員工工資信息表
字段名
ID YID YName YSex Ydep YBasePay YJintie Yjiangli YFK Yquanqin Yjiaban Yyingfa Ypay YMonth
類型
int varchar varchar varchar varchar decimal decimal decimal decimal decimal decimal decimal decimal varchar
長度 10 10 2 10 9 9 9 9 9 9 9 9 50
主鍵否
主鍵 否 否 否 否 否 否 否 否 否 否 否 否 否
描述
系統(tǒng)編號 員工編號 員工姓名 員工性別 員工部門 基本工資 職務(wù)津貼 獎勵金額 罰款金額 全勤獎金 加班工資 應(yīng)發(fā)工資 員工工資 工資月份
獎罰管理信息表:用于保存獎罰管理信息,內(nèi)容如表3.6所示。
表4.6 獎罰管理信息表
字段名
id UserID UserName UserJF UserJFcontent
類型
int varchar varchar varchar varchar
長度 10 10 10 10
主鍵否
主鍵 否 否 否 否
描述
系統(tǒng)編號 員工編號 員工姓名 獎罰類型 獎罰內(nèi)容
UserJLMoney UserFKMoney UserJFDate UserCXDate
decimal decimal varchar varchar 9 50 50
否 否 否 否
獎勵金額 罰款金額 獎罰日期 撤銷日期
調(diào)動管理信息表:用于保存員工的調(diào)動管理信息,內(nèi)容如表3.7所示。
表4.7 調(diào)動管理信息表
字段名
id UID UName URemoveDate UOldDep UNewDep UOldJob UNewJob UOldPay UNewPay UPayExplain
類型
int varchar varchar varchar varchar varchar varchar varchar decimal decimal varchar
長度 10 10 10 10 10 10 10 9 9 10
主鍵否
主鍵 否 否 否 否 否 否 否 否 否 否
備注
系統(tǒng)編號 員工編號 員工姓名 調(diào)動日期 原部門 現(xiàn)部門 原職務(wù) 現(xiàn)職務(wù) 原工資 現(xiàn)工資 工資說明
圖3.5 修改口令PAD圖
5.系統(tǒng)功能實(shí)現(xiàn)
管理員登錄
在管理員登錄中,主要實(shí)現(xiàn)的是對管理員合法性的驗(yàn)證。管理員在此輸入其姓名、證件號并通過軟鍵盤輸入密碼,經(jīng)過與后臺數(shù)據(jù)庫中的記錄進(jìn)行相應(yīng)的對比確定其為合法用戶,管理員才得到進(jìn)入系統(tǒng)的權(quán)限,如圖4.1所示:
圖
管理員登錄界面
功能實(shí)現(xiàn):
1.由于用戶在登錄系統(tǒng)時,可能會有某些信息忘記輸入,這時可能會出現(xiàn)錯誤。本系統(tǒng)通過獲取用戶信息框中的信息并進(jìn)行判斷,如果有未輸入的信息,則會警告用戶并提示用戶將信息輸入完整。
檔案管理
在這個功能模塊中,管理員可以對員工的基本信息進(jìn)行查看。如果有必要,還可以查看某個員工的詳細(xì)信息以此來了解此員工的職位及工資。檔案管理窗體用于管理所有員工的檔案信息,在檔案管理窗體中可以添加、修改、刪除和查找員工信息,雙擊某條員工信息,可以打開修改員工檔案的窗體,在此窗體中可以對信息進(jìn)行修改并顯示員工的詳細(xì)信息。如圖4.2所示。
圖
檔案管理窗體
功能實(shí)現(xiàn):
1.檔案管理窗體加載時,檢索員工檔案表員工檔案信息表中所有的信息,并將其綁定到DataGridView控件上,同時設(shè)置TreeView控件的節(jié)點(diǎn)圖標(biāo)以及選擇后的節(jié)點(diǎn)圖標(biāo),并且動態(tài)的將所有的部門名稱添加到TreeView空間中。
2.如果要按姓名查找員工檔案,可以在ToolStripTextBox控件的TextChanged事件中編寫代碼,實(shí)現(xiàn)當(dāng)控件中輸入關(guān)鍵字后,馬上就能檢索出相應(yīng)的數(shù)據(jù)
3.當(dāng)單擊TreeView控件中某個部門時,主窗體右側(cè)的DataGridView控件中將顯示選中部門的所有員工檔案,該功能是在TreeView控件的AfterSelect事件下實(shí)現(xiàn)的。
4.當(dāng)雙擊某條員工檔案后,會彈出相應(yīng)的窗體用于顯示其詳細(xì)信息,并且可以對詳細(xì)信息進(jìn)行修改,該功能是在DataGridView控件的CellDoubleClick事件下實(shí)現(xiàn)的。添加員工信息
添加員工模塊主要是實(shí)現(xiàn)對員工的信息進(jìn)行管理的模塊。如果添加員工,單擊增加按鈕,打開添加員工信息窗體,該窗體可以向數(shù)據(jù)庫中添加新的員工信息,添加員工信息窗體如圖4.3所示。
圖
添加員工信息
獎罰管理
公司的發(fā)展離不開完善的獎罰制度,獎罰制度可以提高員工的工作熱情,同時,也可以對員工的所制約。在本系統(tǒng)中,開發(fā)了獎罰管理窗體,用于添加,修改或者刪除獎罰信息,方便在發(fā)工資時進(jìn)行工資統(tǒng)計。如圖4.4所示。
圖
獎罰管理窗體
調(diào)動管理
公司的經(jīng)營會根據(jù)員工能力的不同而分配不同的工作,這時在企業(yè)內(nèi)部會出現(xiàn)員工調(diào)動的問題,這就需要對員工調(diào)動有詳細(xì)的記錄,方便員工檔案管理,以及統(tǒng)計工資時發(fā)放員工現(xiàn)任職務(wù)的薪水。如圖4.5所示。
圖 調(diào)動管理窗體
考勤津貼
為了提高員工的積極性,如果員工每月全勤上班,則公司會對其進(jìn)行獎勵,這就需要一個考勤津貼窗體用于管理公司頒發(fā)的考勤獎。如圖4.6所示。
圖 考勤津貼窗體
3.當(dāng)信息輸入完畢,單擊“增加”按鈕,檢查數(shù)據(jù)輸入是否正確,如果輸入的數(shù)據(jù)沒有問題,則將其添加到數(shù)據(jù)庫中。工資總結(jié)
在月末發(fā)工資時,需要對指定月份的員工信息進(jìn)行統(tǒng)計,此時,需要一個工資總結(jié)窗體用于統(tǒng)計所有員工的工資情況,其中包括員工的基本工資、職務(wù)津貼、全勤獎金、加班工資等,方便為每位員工發(fā)放工資。如圖4.7所示。
圖4.7 工資總結(jié)窗體
6.軟件具體功能說明,界面說明(表單說明)
1.打開工資總結(jié)窗體可以瀏覽員工工資的所有信息,當(dāng)次窗體加載時,通過BindDataGridView方法將所有的工資總結(jié)信息檢索出來綁定到dataGridView1控件上并進(jìn)行顯示。
2.如果要打印某個月份員工的工資條,可以選擇相應(yīng)的月份,然后單擊“打印”按鈕,邊可以打開水晶報表的瀏覽窗口。
3.當(dāng)選擇某個月份后,系統(tǒng)會根據(jù)選擇的月份檢索其工資總結(jié)數(shù)據(jù),并調(diào)用BingDataGridView方法綁定dataGridView1控件,然后向水晶報表的現(xiàn)實(shí)窗體中傳遞參數(shù)months。
7.體會及優(yōu)缺點(diǎn)分析
本系統(tǒng)基本符合公司或單位的需求,能夠完成人事工資的管理和信息的查詢以及各類相關(guān)功能的實(shí)現(xiàn)。對于數(shù)據(jù)的一致性的問題也通過程序進(jìn)行了有效的解決??傮w上看可以將管理員從傳統(tǒng)繁重的人工管理中解脫出來。
人事工資管理系統(tǒng)主要包括四大部份:系統(tǒng)登錄管理模塊、員工基本資料管理模塊、員工人事管理模塊、統(tǒng)計管理模塊與系統(tǒng)設(shè)置模塊。員工基本資料管理模塊和員工人事管理模塊實(shí)現(xiàn)對員工資料、員工人事進(jìn)行查詢、添加、刪除和修改等操作。統(tǒng)計模塊包括綜合信息統(tǒng)計、員工工資統(tǒng)計、人事信息統(tǒng)計。綜合信息統(tǒng)計主要統(tǒng)計各部門各職位員工的人數(shù)平均工資及工領(lǐng)。人事統(tǒng)計是按員工的性別、年齡、專業(yè)、職位、職稱、基本工資等信息進(jìn)行統(tǒng)計。系統(tǒng)設(shè)置模塊主要實(shí)現(xiàn)基礎(chǔ)信息設(shè)置、操作日志管理、備份恢復(fù)數(shù)據(jù)、操作員管理、系統(tǒng)設(shè)置、初始化數(shù)據(jù)庫。
隨著經(jīng)濟(jì)全球化,我國加入WTO,特別是信息技術(shù)的飛速發(fā)展,管理信息系統(tǒng)也成了我國企業(yè)重要的發(fā)展對象。對于這種情況,我們針對人事資源管理信息系統(tǒng)進(jìn)行了調(diào)研和開發(fā)分析設(shè)計,以解決人事管理的復(fù)雜繁瑣的問題。但是可由于調(diào)研不全面不深入,以及開發(fā)人員的經(jīng)驗(yàn)不足,這次的有些地方可能不能完全滿足系統(tǒng)使用者的真實(shí)需求,對此我們會盡量完善。我們會在摸索中力求進(jìn)步。
最后,感謝劉喆老師的指導(dǎo)。對此,我們表示極大的感謝及敬意!
第五篇:電子系統(tǒng)級設(shè)計論文
電子系統(tǒng)級(ESL)設(shè)計
摘要:電子系統(tǒng)級設(shè)計(ESL,Electronic System Level)設(shè)計是能夠讓SOC 設(shè)計工程師以緊密耦合方式開發(fā)、優(yōu)化和驗(yàn)證復(fù)雜系統(tǒng)架構(gòu)和嵌入式軟件的一套方法學(xué),并提供下游寄存器傳輸級(RTL)實(shí)現(xiàn)的驗(yàn)證基礎(chǔ)。ESL牽涉到比RTL級別更高層次的電路設(shè)計,其基本的關(guān)注點(diǎn)在于系統(tǒng)架構(gòu)的優(yōu)化、軟硬件劃分、系統(tǒng)架構(gòu)原型建模、以及軟硬件協(xié)同仿真驗(yàn)證。SystemC是一種很好的軟硬件聯(lián)合設(shè)計語言,它不僅可以幫助設(shè)計人員完成一個復(fù)雜的系統(tǒng)設(shè)計,還可以避免傳統(tǒng)設(shè)計中的各種弊端,并提高設(shè)計效率。關(guān)鍵詞:電子系統(tǒng)級設(shè)計;SOC;SystemC 1 引言
目前,高質(zhì)量的電子系統(tǒng)設(shè)計變得越來越復(fù)雜和困難。功能更繁雜的設(shè)計需求,更短的上市時間,不斷增加的成本壓力使這種趨勢看起來還在加速。從應(yīng)用概念到硅片實(shí)現(xiàn)的過程已經(jīng)不能僅僅靠工程師聰明的大腦來完成,而更需要依賴于嚴(yán)格完善的設(shè)計方法學(xué)。
隨著片上系統(tǒng)(SoC,System on Chip)設(shè)計復(fù)雜度的不斷提高,設(shè)計前期在系統(tǒng)級別進(jìn)行軟硬件劃分對SoC各方面性能的影響日趨增加,迫切需要高效快速性能分析和驗(yàn)證方法學(xué)。傳統(tǒng)的RTL仿真平臺不能提供較快的仿真速度與較大的仿真規(guī)模,F(xiàn)PGA平臺則不能提供詳細(xì)的性能分析指標(biāo),而電子系統(tǒng)級設(shè)計(Electronic System Level,ESL)方法,不僅提供高速的仿真驗(yàn)證手段還提供詳細(xì)的性能分析指標(biāo),已經(jīng)成為當(dāng)今SoC設(shè)計領(lǐng)域最前沿的設(shè)計方法,它是能夠讓SoC設(shè)計工程師以緊密耦合方式開發(fā)、優(yōu)化和驗(yàn)證復(fù)雜系統(tǒng)架構(gòu)和嵌入式軟件的一套方法學(xué)。電子系統(tǒng)級設(shè)計(ESL,Electronic System Level)牽涉到比RTL級別更高層次的電路設(shè)計,其基本的關(guān)注點(diǎn)在于系統(tǒng)架構(gòu)的優(yōu)化、軟硬件劃分、系統(tǒng)架構(gòu)原型建模、以及軟硬件協(xié)同仿真驗(yàn)證。全新的ESL工具為電路系統(tǒng)級建模提供了虛擬原型的基本仿真平臺。電子系統(tǒng)級設(shè)計正在從學(xué)術(shù)研究的課題變成業(yè)界廣為接受的建模手段,它完成從理想應(yīng)用優(yōu)化到目標(biāo)體系結(jié)構(gòu)建立。而后依據(jù)預(yù)期產(chǎn)量規(guī)模的不同,用SoC 芯片或可編程平臺實(shí)現(xiàn)。2.傳統(tǒng)SOC設(shè)計方法的局限
目前的設(shè)計方法不能充分利用設(shè)計能力來快速構(gòu)建滿足市場需求的SoC。而只有快速適應(yīng)消費(fèi)電子市場的變化,商業(yè)系統(tǒng)設(shè)計公司才能在競爭中勝出。這使SoC設(shè)計方法的研究具有重要的現(xiàn)實(shí)意義。
目前在技術(shù)上,SoC設(shè)計面臨的主要挑戰(zhàn)是在系統(tǒng)建模和硬件設(shè)計之間的不連續(xù)性。通常系統(tǒng)是使用C語言或其他系統(tǒng)描述語言定義的。而系統(tǒng)的集成電路實(shí)現(xiàn)卻使用硬件描述語言,因此導(dǎo)致轉(zhuǎn)換和重寫系統(tǒng)的負(fù)擔(dān)。這樣的流程使得設(shè)計過程中容易出錯而且耗時。驗(yàn)證流程中需要仿真大規(guī)模系統(tǒng),仿真速度難以需滿足設(shè)計需求。HDL模型仿真效率低,需要提高抽象層次。SoC系統(tǒng)中的組件具有多樣性異質(zhì)性,包括各個專業(yè)的設(shè)計,模擬和數(shù)字設(shè)計等等,需要提供異質(zhì)的仿真環(huán)境以及對系統(tǒng)級設(shè)計空間的探索復(fù)雜性的管理。千萬門級的規(guī)模使得設(shè)計本身的管理成為問題深亞微米集成電路中,沿線延遲的增加使時序收斂問題顯得更加突出,需要消除前端邏輯設(shè)計和后端物理設(shè)計的反復(fù)返工問題傳統(tǒng)的設(shè)計重用方法需要適應(yīng)規(guī)模的增長。系統(tǒng)設(shè)計需要具有競爭力,從基于芯片的設(shè)計方法,過渡到基于IP核的設(shè)計也是必然趨勢。雖然可以使用標(biāo)準(zhǔn)接口,但是更理想的辦法是分離出通訊部分,使用接口綜合技術(shù)。因此需要設(shè)計工具重點(diǎn)面向模塊間的通訊和互連,門級和寄存器傳輸級(RTL)仿真速度太慢,不適合系統(tǒng)設(shè)計。需要提高設(shè)計的抽象層次。SoC設(shè)計的趨勢是向高層抽象移動,更強(qiáng)調(diào)芯片級的規(guī)劃和驗(yàn)證。強(qiáng)調(diào)早期芯片級規(guī)劃,以及軟硬件系統(tǒng)驗(yàn)證。軟硬件協(xié)同設(shè)計方法是SoC設(shè)計方法學(xué)研究的重要領(lǐng)域。主要目的是開發(fā)適應(yīng)設(shè)計需求的設(shè)計方法和相應(yīng)的電子設(shè)計自動化軟件。在設(shè)計中通常一種技術(shù)是不能滿足設(shè)計要求的,因此要結(jié)合研發(fā)成本和開發(fā)周期等等因素,綜合考慮各種技術(shù)。3.ESL設(shè)計的基本概念
ESL設(shè)計指系統(tǒng)級的設(shè)計方法,從算法建模演變而來。ESL設(shè)計已經(jīng)演變?yōu)榍度胧较到y(tǒng)軟硬件設(shè)計、驗(yàn)證、調(diào)試的一種補(bǔ)充方法學(xué)。在ESL設(shè)計中能夠?qū)崿F(xiàn)軟硬件的交互和較高層次上的設(shè)計抽象。ESL設(shè)計能夠讓SoC設(shè)計工程師以緊密耦合方式開發(fā)、優(yōu)化和驗(yàn)證復(fù)雜系統(tǒng)架構(gòu)和嵌入式軟件,并能夠?yàn)橄掠蔚募拇嫫鱾鬏敿?RTL)實(shí)現(xiàn)提供驗(yàn)證基礎(chǔ)。
ESL設(shè)計以抽象方式來描述系統(tǒng)單芯片(SoC)設(shè)計。在ESL設(shè)計中,系統(tǒng)的描述和仿真的速度快,讓設(shè)計工程師有充裕的時間分析設(shè)計內(nèi)容。并且能提供足夠精度的虛擬原型,以配合軟件的設(shè)計。ESL設(shè)計不僅能應(yīng)用在設(shè)計初期與系統(tǒng)架構(gòu)規(guī)劃階段,亦能支持整個硬件與軟件互動設(shè)計的流程。
ESL設(shè)計技術(shù)與IP模塊能將流程融入現(xiàn)有的硬件與軟件設(shè)計與工具流程,在SoC開發(fā)流程中扮演協(xié)調(diào)統(tǒng)合的角色。它們讓工程師能開發(fā)含有數(shù)百萬邏輯門與數(shù)十萬行程序代碼的設(shè)計,并提供一套理想平臺,用來進(jìn)行驗(yàn)證,滿足客戶持續(xù)成長的需求。
4.ESL設(shè)計的特點(diǎn)
ESL設(shè)計之所以會受歡迎,主要源于以下五方面功能:功能正確和時鐘精確型的執(zhí)行環(huán)境使提前開發(fā)軟件成為可能,縮短了軟硬件集成的時間。系統(tǒng)設(shè)計更早地和驗(yàn)證流程相結(jié)合,能確定工程開發(fā)產(chǎn)品的正確性。在抽象層設(shè)置的約束和參數(shù)可以被傳遞到各種用于設(shè)計實(shí)現(xiàn)的工具中。(1)更早地進(jìn)行軟件開發(fā)
有了虛擬的原型平臺意味著可以更早地開始軟件開發(fā)。對于目前基于SystemC語言的ESL設(shè)計方法學(xué)來說,ESL設(shè)計工程師可用SystemC生成一個用來仿真SoC行為的事務(wù)級模型。由于事務(wù)級模型的開發(fā)速度比RTL模型要快得多。在RTL實(shí)現(xiàn)以前,完成TLM建模后的系統(tǒng)就可以開始軟件的開發(fā)。這樣軟件的開發(fā)可以和RTL實(shí)現(xiàn)同時展開,而不是傳統(tǒng)上的在RTL實(shí)現(xiàn)完成以后才開始軟件的開發(fā)。雖然部分和硬件實(shí)現(xiàn)細(xì)節(jié)有關(guān)的軟件要在RTL完成以后才能開始,但還是可以節(jié)省大量的開發(fā)時間。(2)更高層次上的硬件設(shè)計
為了適應(yīng)不斷變化的市場要求,需要不斷推出新產(chǎn)品或經(jīng)過改進(jìn)的產(chǎn)品。在SoC設(shè)計中可以通過改進(jìn)一些模塊的性能、增加功能模塊或存儲器、甚至在體系結(jié)構(gòu)上做出重大的調(diào)整。因此設(shè)計工程師必須擁有可實(shí)現(xiàn)的快速硬件設(shè)計方法。為了實(shí)現(xiàn)快速的硬件設(shè)計,在ESL設(shè)計須建立在較高層次上的抽象如事務(wù)級建模(TLM)。事務(wù)級模型應(yīng)用于函數(shù)調(diào)用和數(shù)據(jù)包傳輸層。傳輸級模型可以分為事件觸發(fā)型和時鐘精確型,這些模型能夠提供比RTL級模型快好幾個數(shù)量級的仿真速度。ESL工具的挑戰(zhàn)就是既要保持足夠精度的時序信息來幫助設(shè)計決策,又要提供足夠的仿真速度以滿足大型的系統(tǒng)軟件(如OS啟動)在可接受的時間內(nèi)的完整運(yùn)行。只要掌握了這種平衡,就可以在高級設(shè)計中驗(yàn)證時序和設(shè)置約束條件,再將這些優(yōu)化的設(shè)計分割、分配到各個不同的軟、硬件設(shè)計工作組去加以實(shí)現(xiàn)。RTL仿真通常只能提供10MIPS到數(shù)百M(fèi)IPS左右的性能;然而,時鐘精確型的ESL仿真卻能達(dá)到100KMIPS到1MMIPS的仿真速度。(3)設(shè)計的可配置性和自動生成
越來越多的系統(tǒng)強(qiáng)調(diào)自己的可配置性,諸如:不同的處理器、不同的總線帶寬、不同的存儲器容量、無數(shù)的外設(shè)。配置和生成出來的設(shè)計必須和驗(yàn)證環(huán)境得到的結(jié)果完全一致,并延續(xù)到整個設(shè)計流程中。通過ESL模型,結(jié)構(gòu)設(shè)計師能夠找到最好的配置方案。但是,這樣產(chǎn)生出來的結(jié)果需要和一套骨架的驗(yàn)證環(huán)境同步到設(shè)計實(shí)現(xiàn)中去。如ARM已經(jīng)實(shí)現(xiàn)了從RealView SoC Designer ESL環(huán)境中自動導(dǎo)入SynopsysDesignWare coreAssembler SoC的集成和綜合流程,并且可以從coreAssembler或Mentor Graphics公司的Platform Express中啟動ARM PL300 AXI可配置互聯(lián)生成器,來生成AXI總線系統(tǒng)。(4)方便的架構(gòu)設(shè)計
ESL架構(gòu)設(shè)計能完成功能到運(yùn)算引擎的映射。這里的引擎指的是那些可編程的目標(biāo)——如處理器、可配置的DSP協(xié)處理器,或者是特殊的硬件模塊如UART外設(shè)、互連系統(tǒng)和存儲器結(jié)構(gòu)。這是系統(tǒng)設(shè)計的開始環(huán)節(jié),從行為上劃分系統(tǒng),驗(yàn)證各種配置選擇的可行性及優(yōu)化程度。ESL工具對于開發(fā)可配置結(jié)構(gòu)體系是非常關(guān)鍵的。它使系統(tǒng)結(jié)構(gòu)從抽象的行為級很容易地映射到具體的硬件設(shè)計,從而方便決定哪些模塊可以被復(fù)用,哪些新模塊需要設(shè)計。還能提供必要信息指導(dǎo)最優(yōu)化的通訊、調(diào)度和仲裁機(jī)制。(5)快速測試和驗(yàn)證
由于ESL設(shè)計中的抽象級別明顯高于RTL設(shè)計抽象級別,ESL設(shè)計中可以做到描述模塊內(nèi)的電路狀態(tài)、精確到納秒的轉(zhuǎn)換以及精確到位的總線行為。相比使用RTL,使用周期精確的事務(wù)級模型將使硬件驗(yàn)證和硬件/軟件協(xié)同驗(yàn)證速度快1000倍或者更多。這種方法不僅可產(chǎn)生用于驗(yàn)證系統(tǒng)行為,它還支持與較低抽象級別的RTL模型的協(xié)同仿真。如果ESL設(shè)計抽象級別被當(dāng)作一個測試臺的話,當(dāng)下游的RTL實(shí)現(xiàn)模塊可用時,它們便可在這個測試臺上進(jìn)行驗(yàn)證。
系統(tǒng)級的HW/SW協(xié)同驗(yàn)證要優(yōu)于C/RTL實(shí)現(xiàn)級的HW/SW協(xié)同驗(yàn)證。因?yàn)樵谙到y(tǒng)級的驗(yàn)證可以在較早的展開,而不必等到底層的實(shí)現(xiàn)完成后才開始。在底層實(shí)現(xiàn)沒有開始前的協(xié)同驗(yàn)證可以及時修改體系結(jié)構(gòu)或軟硬件劃分中的不合理因素。越高層次上的驗(yàn)證,可以越大程度上減少修改設(shè)計帶來的損失。5.ESL設(shè)計方法
ESL作為一種先進(jìn)的設(shè)計方法學(xué),能夠用于硬件的功能建模與體系結(jié)構(gòu)的探察,給硬件架構(gòu)設(shè)計人員提供準(zhǔn)確可靠的設(shè)計依據(jù),因此在本章的內(nèi)容里將將詳細(xì)介紹ESL設(shè)計的基本流程與ESL的核心方法—利用SystemC實(shí)現(xiàn)事務(wù)級建模的基本理念。
首先要指出的是在設(shè)計的哪個階段使用ESL設(shè)計方法和ESL設(shè)計工具。每一個電子產(chǎn)品的設(shè)計過程以某一種形式的頂層定義開始。這個定義過程可以以文本的形式描述,也可以用圖表、狀態(tài)圖、算法描述,或者利用工具如MATLAB等描述。ESL設(shè)計并不是定位在這個層次上的設(shè)計。而是通過描述系統(tǒng)怎樣工作,并為進(jìn)一步的實(shí)現(xiàn)提供一個解決方案。ESL設(shè)計成為系統(tǒng)和更加底層設(shè)計之間的橋梁。ESL設(shè)計包括功能設(shè)計和體系結(jié)構(gòu)設(shè)計兩大領(lǐng)域。
系統(tǒng)的行為由功能模塊實(shí)現(xiàn),功能模塊設(shè)計必須關(guān)注系統(tǒng)的應(yīng)用。功能設(shè)計不考慮硬件和軟件,物理和工藝。功能設(shè)計包括實(shí)現(xiàn)功能模塊結(jié)構(gòu)、模塊之間的通信和它們的基本行為。在ESL中一個硬件功能模塊的設(shè)計包括定義正確的功能,確定輸入和輸出,劃分子模塊,確定子模塊的結(jié)構(gòu)、數(shù)據(jù)流和控制邏輯,還要為其模塊建立測試環(huán)境。這個設(shè)計過程和RTL的設(shè)計流程相似,但他們在不同的抽象層次上,使用不同的設(shè)計語言,例如,在ESL的功能模塊建模過程中使用SystemC或SystemVerilog,而RTL級建模則使用Verilog或者VHDL。
體系結(jié)構(gòu)設(shè)計首先要建立平臺的描述。接著將應(yīng)用的功能部件影射到平臺。驗(yàn)證體系結(jié)構(gòu)模型,并根據(jù)成本和性能優(yōu)化這個結(jié)構(gòu)。在體系結(jié)構(gòu)設(shè)計中需要考慮處理器的類型、處理器的數(shù)量、存儲器的大小、Cache性能、總線互聯(lián)和占用率、軟件和硬件的功能劃分和評估、功耗的評估和優(yōu)化等。
首先ESL接受一個設(shè)計定義的輸入,這個定義可以是文本、圖表、算法或者是某種描述語言如UML,SLD,MATLAB等的描述。對于這個輸入的定義,在ESL設(shè)計完成算法的開發(fā),接口定義,用ESL語言或其他語言來描述來完成體系結(jié)構(gòu)的設(shè)計。并在此基礎(chǔ)上完成軟硬件的劃分。完成軟硬件劃分后,可以開始軟件和硬件的設(shè)計。在硬件設(shè)計中,對于功能單元需要在較高層次上的建模,完成功能設(shè)計。比如說用SystemC進(jìn)行事務(wù)級的建模。
用C/C++或其他高級語言完成應(yīng)用軟件的設(shè)計。在這個階段開始軟硬件的協(xié)同驗(yàn)證,根據(jù)協(xié)同驗(yàn)證的結(jié)果反饋給體系結(jié)構(gòu)和軟硬件劃分。后者根據(jù)性能、成本等因素重新做出調(diào)整。軟硬件的設(shè)計和驗(yàn)證,包括軟硬件的協(xié)同驗(yàn)證是一個重復(fù)的過程,在整個設(shè)計過程中都要根據(jù)驗(yàn)證的結(jié)果對體統(tǒng)和設(shè)計做出調(diào)整。完成驗(yàn)證的硬件和軟件設(shè)計就可以組成一個完整地系統(tǒng)級設(shè)計。傳遞給下一級 的設(shè)計作為輸入。比如說是ESL設(shè)計為軟件應(yīng)用提供C或C++語言描述的程序。為定制電路提供Verilog或VHDL語言描述的硬件設(shè)計。為硬件平臺提供PCB板的功能部件或抽象層IP,比如說基于SystemC的IP。在實(shí)現(xiàn)ESL設(shè)計流程的具體過程中,有不同的實(shí)現(xiàn)方法可以采用。下面介紹兩種應(yīng)用得比較多 的設(shè)計方法。
在完
成系統(tǒng)功能定義后,設(shè)計方法之一是從系統(tǒng)的定義開始,先進(jìn)行算法級設(shè)計。通常用MatLab等工具進(jìn)行算法的分析,接著用Simulink等工具進(jìn)行數(shù)據(jù)流的分析。完成分析后進(jìn)行體系結(jié)構(gòu)的平臺的設(shè)計。體系結(jié)構(gòu)和平臺設(shè)計要進(jìn)行系統(tǒng)級的驗(yàn)證,以確定結(jié)構(gòu)是否合理。在體系結(jié)構(gòu)的設(shè)計中,首先從IP庫中獲取已有的硬件模塊的事物級模型,如處理器和總線模型,或者重新設(shè)計IP庫中沒有的模塊的事物級模型。硬件模塊的事物級建模完成后,建立系統(tǒng)模型。接下來輸入軟件參考模型進(jìn)行軟硬件的協(xié)同驗(yàn)證。體系結(jié)構(gòu)的系統(tǒng)級驗(yàn)證的目標(biāo)是確定存儲器的大小、DMA的定義、總線帶寬和軟硬件劃分等。
與圖2中的ESL設(shè)計方法一相比,圖3中的設(shè)計方法是直接由軟件參考代碼開始,創(chuàng)建事物級模型的虛擬平臺,在此基礎(chǔ)上進(jìn)行系統(tǒng)結(jié)構(gòu)設(shè)計,驗(yàn)證和性能的分析。通常,軟件參考代碼已實(shí)現(xiàn)了基本功能,特別是保證了算法及數(shù)據(jù)流等的正確性。如,軟件參考代碼可以是某一標(biāo)準(zhǔn)協(xié)議的用C語言寫的參考代碼。在軟件參考代碼和事物級模型的基礎(chǔ)上分別進(jìn)行軟件和硬件的設(shè)計。在軟件設(shè)計中,會把建立完成的虛擬平臺和構(gòu)架作為集成開發(fā)環(huán)境的一部分。集成開發(fā)環(huán)境還包括編譯器和調(diào)試工具的開發(fā)。在設(shè)計的過程通過軟硬件的協(xié)同驗(yàn)證調(diào)整設(shè)計的內(nèi)容。
6.SystemC的系統(tǒng)級芯片設(shè)計方法研究
在傳統(tǒng)設(shè)計方法中,設(shè)計的系統(tǒng)級往往使用UML,SDL, C, C++等進(jìn)行描述以實(shí)現(xiàn)各功能模塊的算法,而在寄存器傳輸級使用硬件描述語言進(jìn)行描述。最廣泛使用的2種硬件描述語言是VHDL和Verilog HDL,傳統(tǒng)的系統(tǒng)設(shè)計方法流程如圖3所示。從圖中不難看出,傳統(tǒng)的設(shè)計方法會出現(xiàn)如下弊端:首先,設(shè)計人員需要使用C/C++語言來建立系統(tǒng)級模型,并驗(yàn)證模型的正確性,在設(shè)計細(xì)化階段,原始的C和C++描述必須手工轉(zhuǎn)換為使用VHDL或Verilog HDL。在這個轉(zhuǎn)換過程中會花費(fèi)大量的時間,并產(chǎn)生一些錯誤。
其次,當(dāng)使用C語言描述的模塊轉(zhuǎn)換成HDL描述的模塊之后,后者將會成為今后設(shè)計的焦點(diǎn),而設(shè)計人員花費(fèi)大量時間建立起來的C模型將再沒有什么用處。再次,需要使用多個測試平臺。因?yàn)樵谙到y(tǒng)級建立起來的針對C語言描述的模塊測試平臺無法直接轉(zhuǎn)換成針對HDL語言描述的模塊所需要的測試平臺。
無論采用什么樣的設(shè)計方法學(xué),人們都需要對SOC時代的復(fù)雜電子系統(tǒng)進(jìn)行描述,以選擇合適的系統(tǒng)架構(gòu)進(jìn)行軟硬件劃分、算法仿真等。描述的級別越低,細(xì)節(jié)問題就越突出,對實(shí)際系統(tǒng)的模仿就越精確,完成建模消耗的時間、仿真和驗(yàn)證時間就越長。相反,描述的抽象級別越高,完成建模需要的時間就越短,但對目標(biāo)系統(tǒng)的描述也就越不精確。作為設(shè)計人員必須在速度和精確性之間做出選擇。
人們對系統(tǒng)級描述語言的要求是:高仿真速度以及建模效率、時序和行為可以分開建模、支持基于接口的設(shè)計、支持軟硬件混合建模、支持從系統(tǒng)級到門級的無縫過渡、支持系統(tǒng)級調(diào)試和系統(tǒng)性能分析等。人們迫切需要一種語言單一地完成全部設(shè)計。這種語言必須能夠用于描述各種不同的抽象級別(如系統(tǒng)級、寄存器傳輸級等),能夠勝任軟硬件的協(xié)同設(shè)計和驗(yàn)證,并且仿真速度要快。這就是所謂的系統(tǒng)級描述語言SLDL,而傳統(tǒng)的硬件描述語言如VHDL和Verilog HDL都不能滿足這些要求。SystemC就是目前這方面研究的最新、最好的成果,他擴(kuò)展傳統(tǒng)的軟件語言C和C++并使他們支持硬件描述,所以可以很好地實(shí)現(xiàn)軟硬件的協(xié)同設(shè)計,是系統(tǒng)級芯片設(shè)計語言的發(fā)展趨勢。7.ESL綜合
“ESL綜合”到底有沒有一種明確的定義,能讓我們確信ESL綜合是一種可行的設(shè)計技術(shù),或者用于評估某款所謂的ESL綜合工具是否真的能夠完成綜合工作?憑借Synplicity營銷高級副總裁AndrewHaines在電子設(shè)計自動化(EDA)方面的工作經(jīng)驗(yàn),關(guān)于ESL綜合的定義,建議是:此定義應(yīng)該突出ESL綜合與其他ESL設(shè)計工作相比的獨(dú)到之處。
首先,從本質(zhì)來說,綜合是從一種抽象層級轉(zhuǎn)變?yōu)榱硪环N抽象層級,同時保持功能不變。邏輯綜合是從RTL到邏輯門的轉(zhuǎn)變;而物理綜合則是從RTL到邏輯門及布局的轉(zhuǎn)變。因此,ESL綜合是從ESL描述語言到RTL等抽象較低的實(shí)施方案的轉(zhuǎn)變。就ESL綜合的定義而言,選擇哪種描述語言并不重要,因?yàn)橥ㄟ^在初始化階段根據(jù)不同應(yīng)用支持多種ESL語言的方式,用戶群最終均能解決這一問題。重要的是,ESL綜合應(yīng)將設(shè)計轉(zhuǎn)變?yōu)槌橄筝^低但功能相當(dāng)?shù)膶?shí)施方案。其次,某種技術(shù)被定義為綜合技術(shù),就必然與其他形式的轉(zhuǎn)變存在根本區(qū)別。例如,原理圖輸入(schematic capture)很顯然是一種涉及多種抽象層級的轉(zhuǎn)變,而綜合則不是。綜合與原理圖輸入定義的獨(dú)特區(qū)別在于香蕉曲線,也
就是說,綜合的結(jié)果不是面積與時序關(guān)系圖上的一個點(diǎn),而是一條曲線,表示所有綜合結(jié)果均保持相當(dāng)?shù)墓δ?,但時序與面積不同。因此,根據(jù)面積與時序關(guān)系自動定義一系列功能相當(dāng)?shù)慕鉀Q方案必須作為ESL綜合定義的一部分。
我們已經(jīng)認(rèn)識到,真正的DSP綜合需要從算法發(fā)展到優(yōu)化的RTL,市場中已有能夠滿足上述要求的相關(guān)ESL綜合技術(shù)。這確實(shí)是ESL綜合技術(shù)的進(jìn)步。不過,客戶必須始終認(rèn)識到,有的所謂“ESL綜合”工具實(shí)際只能根
據(jù)算法描述創(chuàng)建參數(shù)化的RTL模型,這種產(chǎn)品不能實(shí)現(xiàn)自動化,也無法形成“香蕉曲線”,且對提高工作效率的作用也非常有限。定義本身不會改善ESL設(shè)計,即便如此,我們也應(yīng)當(dāng)在早期為其下一個明確的定義,以便設(shè)計小組了解ESL的真正進(jìn)步與不足。參考文獻(xiàn):
[1]劉強(qiáng).基于SystemC的系統(tǒng)級芯片設(shè)計方法研究,現(xiàn)代電子技術(shù),2005(9)[2]陶耕.基于ESL設(shè)計方法學(xué)的雷達(dá)信號產(chǎn)生與處理技術(shù)[D].南京理工大學(xué),2009 [3]Ron Wilson.電子系統(tǒng)級設(shè)計:從現(xiàn)象到本質(zhì).EDN電子設(shè)計技術(shù),2008(11)
[4]Bassam Tabbara.電子系統(tǒng)級(ESL)設(shè)計:越早開始越好.中國集成電路,2005(12)[5]祝永新.基于ARM ESL平臺的H.264與AVS雙解碼軟硬件協(xié)同設(shè)計和研究[D].上海交通大學(xué),2010 [6]劉昊.基于ESL的AVS幀內(nèi)預(yù)測算法周期精確級建模.信息技術(shù),2008