2008年12月15日 星期一

用C語言模擬電路

困難度:★★★
我們在數位邏輯設計之類的課程裡常常會使用到一些數位電路模擬軟體,有時候蠻好奇那些模擬軟體到底是怎麼運作的,所以我們這次的Project將來處理這樣的問題。

程式的功能主要是讀取由使用者提供兩個檔案,其中之一的內容是描述元件和其之間的接線,另一個是儲存輸入腳位的波型;而程式讀入後,會根據接線的狀況和輸入的波型,模擬輸出腳位數值的變化。

剛開始程式會先分析邏輯描述檔案是否有接線上的錯誤。如果沒有錯誤就會進行模擬的階段,根據波形的改變分析邏輯閘輸出的變換。
##CONTINUE##
分析問題之後發現其實如果程式只是處理組合邏輯並不具有挑戰性,組合邏輯只需要把符號轉換成運算式處理就十分的簡單,所以我們的重點將放在時序邏輯和遞迴邏輯(像LATCH)上。

本次Project主要是Stacks and Queues的使用。Queues主要是用在檔案讀入描述式的分析和Functions之間數值串列的傳遞,而Stacks可以對需要處理運算的邏輯閘進行排程。

程式碼再修改一下就能有延遲的作用,如果未來有可能將作為自己在模擬數位電路時能使用的引擎。
Source Code下載(包含說明、模擬檔案等相關資料)
http://sites.google.com/site/hayden0828/blog/Simulator.rar

2008年12月3日 星期三

Nurien - 在虐待你的顯示卡時,順便看看咩吧.....





Nurien是一種網路社群遊戲(ㄕㄜˋ ㄑㄩㄣˊ,不是色情= ="),看官網講的好像有類似DDR和時裝秀之類的小遊戲,並可以在任何能上網的地方建立自己的3D虛擬空間。

 

NVDIA介紹頁有提供測試DEMO,可以讓你跑跑看,順便操操你的顯示卡(官方建議GeForce 9600GT以上...我的8600GT要哭了....)。

 

值得一提的是,這款遊戲採用了Nvidia的PhysX物理運算技術,也就是CUDA的應用,就是利用GPU強大的平行運算能力來分擔CPU的工作,對於整個系統的整合算是一大進步。

 

 

 

NVDIA介紹頁

http://tw.nvidia.com/object/games_nurien_tw.html

NURIEN官網

http://www.nurien.com/

(註:咩=妹...)