2010-09-01 36 views
0

我正在閱讀Charles Petzold的代碼,並且想要構建並使用我自己的非常簡單的計算機,以更好地內化一些概念。一位朋友告訴我有關CARDIAC的消息,但似乎它已不再可用。所以,我想知道是否有人對類似的工具包有所建議,這會幫助我熟悉類似的低級概念,操作等。替代貝爾實驗室的CARDIAC

回答

1

您可以繼續構建自己的Apple II或Commodore 64,但是有許多難以建立完全引腳兼容版本的源代碼部件。這肯定是一個教育項目,但這將是一項巨大的任務。

什麼可能更好地削減你的牙齒是Arduino平臺,一個微控制器套件的電源類似於該年份的計算機。有一個支持它的大型社區,它使用標準連接器(如USB和以太網)與現代設備連接。有些版本甚至有藍牙和Wi-Fi,使通信更容易。

如果您使用assembly language編程該設備,而不是默認的高級語言,那麼該設備即可獲得的低級別。你可以從一個空白的石板上建立起來,探索所有的基礎。

0

arduino價格低廉,廣受歡迎。 armmite pro,類似於ARM,而不是AVR(你可能想要使用C接口)。 msp430來自ti ...實際上是一大堆微控制器,可以讓你的手變得很髒,只要你喜歡。也許就像裝載了外設的Stellaris評估板一樣,您可以通過閱讀原理圖和數據表瞭解關於閱讀的內容。或者像AVR Butterfly那樣簡單的東西,如果這些東西仍然可用的話,那麼足夠的機載東西來擺弄,而不必購買和焊接東西。

您可以隨時追求的路徑是模擬。硬件設計語言(HDL)Verilog對於軟件工程師來說不難學習,你只需要考慮並行執行而不是順序執行。 Verilator是一個很好的免費模擬器,可以很容易地將你的邏輯設計的邊緣連接到C/C++,因此你可以在C++中模擬你不能或不想在Verilog中做的事情。我希望看到更多曝光的HDL是循環設計語言cyclicity-cdl.sourceforge.net。與Verilog和VHDL語言不同,它們允許您編寫可合成邏輯,可以轉換成硬件的邏輯,以及行爲邏輯,這些邏輯不得不用於測試可合成邏輯。 cdl只能合成,您編寫的測試平臺是用腳本語言或C/C++編寫的。一旦編譯過的Cdl代碼產生可綜合的verilog(用於測試然後變成硬件)和C++(用於模擬/測試)。 Icarus Verilog是另一個不錯的免費verilog仿真平臺,從命令行的角度來看可能比verilator更容易使用,但並不容易與我知道我更喜歡的C++集成在一起,用於測試邏輯或僅與教育邏輯進行簡單集成目的。你可以低於彙編程序,使用HDL你可以創建連接或門的樹,使用觸發器等,直接實現書中討論的東西。

另一種方法是在沒有硬件語言的情況下進行模擬,只需編寫您自己喜歡的任何類型系統的模擬器,模擬邏輯,模擬處理器等。從個人經驗來看,模擬,拆卸等教程更多關於你感興趣的平臺,而不是簡單的考試(閱讀等)或者編寫某人的模擬器或硬件程序。

順便說一句,謝謝你放棄Petzolds的名字,我正要在閱讀你的問題時在線購買這本書,正如我記得在商店裏看到它的時候,當我意識到我在書店關門時買了它,埋在我的沒有打開它的書架。我的編程窗口3.1和Windows 95 Petzold書籍在當天的所有使用中都很好用。翻閱這本書,回答這個問題,我將把它添加到下一本被閱讀的書籍中。