基于牛角棋的博弈電路系統(tǒng)設(shè)計(jì)
2 牛角棋博弈系統(tǒng)硬件設(shè)計(jì)
本系統(tǒng)的處理器為NiosⅡ嵌入式軟核處理器。NiosⅡ是Altera公司提出的數(shù)字系統(tǒng)SoPC解決方案,使得處理器可配置到可編程邏輯器件之中,因此被稱為軟核處理器。NiosⅡ軟核處理器與常見(jiàn)的微控制器相似,它們都是在一個(gè)芯片上包含了處理器、存儲(chǔ)器、以及輸入/輸出電路等功能模塊。相對(duì)于微控制器,NiosⅡ軟核處理器最大的特點(diǎn)為它是一種軟核、可配置的系統(tǒng)。軟核表示處理器的目標(biāo)器件只有在下載設(shè)計(jì)文件后才具備處理器的功能;可配置意味著處理器系統(tǒng)的組成和性能可以根據(jù)需要進(jìn)行調(diào)整。另外,系統(tǒng)還包含計(jì)時(shí)模塊和PLL分頻模塊,硬件系統(tǒng)主要包括NiosⅡ快速型內(nèi)核、SDRAM、三態(tài)橋(tristate bridge)cfi控制器、sysid和并行輸入輸出(pio)。對(duì)系統(tǒng)的各個(gè)模塊添加和配置完成之后,可以使用SoPC Builder自動(dòng)配置各個(gè)模塊的的地址和系統(tǒng)的中斷。
3 測(cè)試結(jié)果
該設(shè)計(jì)采用的開(kāi)發(fā)板為A1tera公司的DE2 FPGA開(kāi)發(fā)板,板上的FPGA為CycloneⅡ系列,芯片的型號(hào)為EP2C35F672C2。
SoPC系統(tǒng)配置完成以后,在原理圖中將系統(tǒng)各個(gè)模塊的硬件系統(tǒng)進(jìn)行連接,生成硬件系統(tǒng)原理圖。之后,對(duì)系統(tǒng)進(jìn)行綜合、時(shí)序分析等操作,完成硬件系統(tǒng)的調(diào)試。接著對(duì)FPGA的引腳進(jìn)行鎖定,然后將硬件系統(tǒng)全編譯生成FPGA配置文件用于配置FPGA。在使用QuartusⅡ?qū)oPC系統(tǒng)硬件配置到FPGA之后即可在NiosⅡIDE中對(duì)系統(tǒng)的軟件進(jìn)行在線調(diào)試。
博弈樹(shù)的搜索最大層數(shù)設(shè)置為15層,對(duì)系統(tǒng)重新進(jìn)行編譯成功以后將FPGA配置文件和軟件一起下載到FPGA上進(jìn)行驗(yàn)證,圖4為驗(yàn)證過(guò)程中的一些局面。其中(a)為游戲開(kāi)始時(shí)的局面,藍(lán)方2枚棋子和紅方棋子的棋位分別為11,10,0,圖中顯示的是十六進(jìn)制,此時(shí)機(jī)器等待用戶選擇走棋方;(b)為游戲過(guò)程中的一個(gè)局面,此時(shí)藍(lán)方2枚棋子和紅方棋子的棋位分別為9,6,4;(c)是游戲結(jié)束時(shí)的局面,此時(shí)紅子被藍(lán)子憋在牛角尖處無(wú)法移動(dòng),藍(lán)方獲勝,LEDG7閃亮。本文引用地址:http://m.butianyuan.cn/article/175910.htm
在SoPC系統(tǒng)中,設(shè)置的最大搜索層數(shù)為15層。從上面的結(jié)果可以看出,每個(gè)局面搜索時(shí)間最大為2 s,滿足系統(tǒng)設(shè)計(jì)是的性能要求:最大搜索深度大于10層;每個(gè)局面最大搜索時(shí)間最大不超過(guò)3 s。針對(duì)系統(tǒng)的智能性和速度方面的測(cè)試結(jié)果如表1所示。選10個(gè)人每人做10次實(shí)驗(yàn),共計(jì)100次實(shí)驗(yàn),對(duì)實(shí)驗(yàn)結(jié)果進(jìn)行綜合分析得到數(shù)據(jù)如表1所示。
從上面結(jié)果可以看出:系統(tǒng)的智能性還有待提高,這主要是為了使系統(tǒng)搜索更快而降低搜索層數(shù)導(dǎo)致的結(jié)果。
4 結(jié)語(yǔ)
本文以牛角棋的博弈過(guò)程為研究載體,論述了機(jī)器博弈系統(tǒng)的設(shè)計(jì)和實(shí)現(xiàn)過(guò)程。實(shí)驗(yàn)結(jié)果表明本文方法具有較好的智能性和實(shí)時(shí)性。隨著現(xiàn)代集成技術(shù)的發(fā)展,F(xiàn)PGA的規(guī)模和速度不斷提高。更加豐富的邏輯資源和嵌入了RAM塊,使得利用FPGA技術(shù)設(shè)計(jì)復(fù)雜度很高的棋類博弈系統(tǒng)(如中國(guó)象棋)成為可能。
評(píng)論