題:
麵包板電腦
C.T.
2015-08-23 17:31:42 UTC
view on stackexchange narkive permalink

是否有可能完全用麵包板和基本電子元件製造一台簡單的計算機?例如以這種方式構造科學計算器是否可行?

它不僅是可能的,而且人們也會這樣做,例如http://www.megaprocessor.com/等等,只是Google的“離散晶體管cpu”或類似名稱。它變得非常複雜,並且花費數年的時間來構建和調試
是否取決於麵包板的意思。如果包括Veroboard,標籤條或死蟲子結構,這些釘子是用釘在媽媽的麵包板上的釘子固定的(是的)-全部都焊接了,那麼肯定是的。如果您的意思是那些隨意鬆開電線的塑料物品,那就算了吧...
@BrianDrummond Re塑料麵包板-顯然可行(請參閱我的回答)。我已經看到了幾台以此方式構建的計算機。如果一個人不小心拉了一些電線,那真是一場噩夢。我真的很驚訝他們真的跑了。
我認為,如果您有無限個麵包板,您將游覽完整嗎?
您確實需要發現Homebrew CPU“網絡環”(這是90年代搜索引擎主導網絡之前的一種方式):http://members.iinet.net.au/~daveb/simplex/ringhome.html
[Altair 8800](https://en.wikipedia.org/wiki/Altair_8800)使用了[Intel 8080](https://en.wikipedia.org/wiki/Intel_8080)CPU。8080具有[大約6,000個晶體管](https://en.wikipedia.org/wiki/Intel_8080#Physical_implementation),但也從[外部支持芯片](https://en.wikipedia.org/wiki/Intel_8080#Support_chips),當然您仍然需要RAM和朋友。雖然Altair 8800在編程和用法上都[相當原始](https://en.wikipedia.org/wiki/Altair_8800#Description),但它足夠複雜,可以進行編程來做一些瑣碎的事情。
您可能還想與MITS的早期[MITS 816](https://en.wikipedia.org/wiki/Micro_Instrumentation_and_Telemetry_Systems#Calculators)計算器進行比較。
科學計算器 ?也許不吧 。但是,運算放大器可以簡單地進行加減運算和集成
(1)相關:[因為是/否回答,所以問題已關閉](http://meta.stackexchange.com/a/183183/254079)“當提出是/否問題時,有兩種可能性之一……”(2)初步研究不足。搜索“麵包板計算機”不會顯示結果不足。絕對足以回答是/否的問題。
是的...但是您需要成為超級怪胎。[家用Z80復古計算機-Computerphile。](https://www.youtube.com/watch?v=OtpaY8VD52g)
五 答案:
tcrosley
2015-08-23 20:19:38 UTC
view on stackexchange narkive permalink

我不同意將微控制器放在麵包板上的資格等同於在麵包板上構建計算機。除了I / O(例如鍵盤和顯示器)外,微控制器本身就是一台完整的計算機。只需將其放在麵包板上並連接幾根電線就可以了,這很簡單,並且可以在十分鐘之內完成。 ?”,通過基本的電子組件,我認為它的含義更像是這樣:

enter image description here

現在,這是一檯面包板上的計算機(嗯,由基本組件構建的幾個麵包板)。 它的描述在這裡。它由十幾種74LS00系列IC組成。 (我不認為我們想一直回到晶體管;最初的 PDP-8只是一個小冰箱的大小。)

就科學計算器而言,如果您構建瞭如上所示的通用計算機,則可以將其編程為科學計算器。僅使用邏輯集成電路(而不是計算機)來構造科學計算器將非常困難。所有像這樣的計算器製造商(例如Ti,HP等)都使用了特殊的大型集成電路。這是一個使用早期4位計算器IC的內置計算器

我同意,如果希望盡快啟動並運行計算機,那麼使用微控制器是必經之路。如果要真正了解計算機的內部工作原理,那麼用基本的IC構建一個是正確的方法。

[有人使用能夠運行Linux的68k製作了麵包板計算機](http://www.bigmessowires.com/2014/11/17/68-katy-68000-linux-on-a-solderless-breadboard/)
@ColeJohnson他的筆記說他沒有原理圖!
AilihgdrdcCMT thx,已修復。
Viktor Toth
2015-08-24 01:48:20 UTC
view on stackexchange narkive permalink

這不僅是可行的,而且實際上我已經做到了:請參閱 https://www.vttoth.com/CMS/projects/47

以下是接線方法麵包板之一的背面看起來像:

enter image description here

當然,這完全取決於哪些組件符合“基本”條件。就我而言,基本組件是74 ...系列TTL芯片,大約有一百個。要完全用晶體管來構建計算機……那將太不堪重負了。

此外,我的4位計算機的功能實際上還不足以用作科學計算器,主要是因為內存限制(256個4位半字節)。但是,也許可以使用分頁機制來擴展地址空間並不十分困難,並且4096個nybble(12位地址)可能已經足夠了,可以肯定的是65536個nybble(16位地址)。

恭喜你那是相當大的成就。我喜歡指令集-讓我想起6800。
有一個人正在致力於只使用晶體管來構建處理器。RAM,處理器,一切。[MegaProcessor.com](http://www.megaprocessor.com/)
有些人比我更耐心。
PkP
2015-08-24 00:26:42 UTC
view on stackexchange narkive permalink

是有可能的,但是您需要的不只是幾個麵包板,而是需要一個科學的計算器,具體取決於您所認為的基本組件:是將晶體管稱為基本組件,還是將晶體管稱為觸發器,EEPROM或可以從舊冰箱中焊接出來的東西。

這裡有一些很好的答案,但是我想指出一件事,人們通常不會考慮。從計算設備的歷史來看,用樹皮和釘子構建計算機的困難不是CPU還是ALU。 主要問題是內存。因為要使整個存儲程序概念正常工作,您需要大量的代碼。您可以通過幾個觸發器和與非門來製造CPU。例如,對於具有特定約束的電力電子應用,我曾經設計一個微處理器,僅使用69個觸發器(4個16位寄存器,4個標誌和1個狀態寄存器位,表示FETCH / EXECUTE)。它在矽片上實現,人們編寫在其上運行的軟件。這很簡單,並且適合功率晶體管的漏極觸點大小。但是存儲任何有用程序所需的內存要大得多。

早期,內存是設計的起點。您可以像在早期電話交換中那樣使用雙穩態繼電器。您可以使用真空管或晶體管製作觸發器。通常,CPU的寄存器是通過這種方式實現的。但是對於程序和數據存儲,使用了紙帶,磁帶,旋轉磁盤或旋轉鼓。甚至是電子設備上不斷接收和轉發的鋼絲上的聲波。您能想到的任何事情都可以在合理的時間內以合理的成本保留一些位。阿波羅(Apollo)繞月器和月球著陸器計算機使用纏繞成繩子的線圈芯存儲器。所有這些都需要不同的接口設備,並且對訪問這些類型的存儲器所需的CPU產生巨大影響。半導體存儲器直到1970年代才真正出現,最終消除了這種複雜性。但是再說一次,現代動態RAM也不是那麼容易。

然後,必須為計算機設計輸入輸出設備,這帶來了更多的奇妙之處。一些燈泡對於某些應用程序來說很好,但是如果您需要文本輸入/輸出或什至更複雜的東西,那麼您將再次面臨更多的困難。打卡機,打印機和紙質終端在當時是一項巨大的業務。 1978年推出的VT100文本模式視頻終端的內存和處理能力比您的科學計算器麵包板計算機要強得多。

儘管當然可以使用觸發器來實現內存,但我認為需要做出讓步以允許使用內存IC(在這些家用計算機中通常將74181用於ALU就是這種情況)。您可以通過DIP封裝獲得8Kx8 [SRAM](http://www.alliancememory.com/pdf/ZMD_U6264B.pdf),價格約為2美元。對於計算器來說,這應該足夠了。與EEPROM相同。
@tcrosley我同意。我只是指出歷史上的一句話。如果您今天要構建一台自製計算機,那麼您就不會遵循一些任意規則,而是為了娛樂和學習而做。與纏繞16,000位核心內存相比,設計微處理器更有趣,而且學習體驗更好;)
@PkP對於記住*如何*編織核心內存並記錄下來的人,可以說些什麼。與其說是一兩個工作原理,不如說是如何在不發瘋的情況下實現16 kbit的實際方面。我從事種子種子項目。我可以想像一下這種精神錯亂……我以為曾經有工廠自動化來做到這一點,但是我幾乎沒有看到關於生產方面的文章。
@RBerteig,謝謝,我同意。好吧,我記得讀過《阿波羅號》計算機的繩索記憶是由非常熟練的織女編織的,他們非常驚訝地耐心仔細地檢查了代碼圖中的每個零或零,這表明位線圈是通過芯子還是通過機芯編織而成。繞過它,或達到某種效果。我記得從同一來源讀到,編寫Apollo軟件的MIT工程師對軟件進行每次修改後,他們花了六個月的時間才編織出新的ROM。
Wouter van Ooijen
2015-08-23 17:52:32 UTC
view on stackexchange narkive permalink

有可能,但是複雜性和尺寸取決於您所說的基本電子組件。 ALU和定序器邏輯有點複雜,但是可行。內存很簡單,但是基本模式必須重複很多次(請考慮1000次)。

除了硬件之外,您還需要在其上運行的軟件。粗略估計,對於中等複雜的CPU(經典的16位指令8位數據級別),您的軟件工作量將與硬件工作量相當。 (對於更簡單的CPU,您將需要更多的SW工作。)並且如何將SW加載到計算機中?我建議您開始在VHDL中編寫並在模擬器上運行,這比一堆芯片和電線要容易得多。

我的兩個學生創建了一個16位CPU大約1年之內的一些基本軟件(包括GCC後端端口),從VHDL和C代碼開始進行仿真。 ALU使用74181芯片,內存是靜態RAM,並且使用atMega在PC和計算機之間進行接口。該計算機部分位於無焊麵包屑上,部分位於PCB(8個16位寄存器)上。 (這兩個是不是普通學生!)

Oka
2015-08-23 17:41:50 UTC
view on stackexchange narkive permalink

是的,有可能。但是您需要一個微控制器來進行數學計算。是一個示例項目。它使用AVR微控制器和16×2 LCD顯示屏。

+1我有一個使用ARM處理器的計算器。如今,微控制器應被視為基本組件。
您不需要微型,它使事情變得更容易。
@PlasmaHH可以是微控制器,也可以是多個麵包板。只有基本的2輸入門?玩得開心。OTOH一個或兩個ROM +一個MUX +寄存器=一個簡單的微控制器。
您如何看微控制器的數學運算?使用ALU-由矽/晶體管/基本門製成,具體取決於您查看事物的規模。
微控制器和微處理器也由電子元件製成,因此您可以將它們製作在麵包板上,而無需真正的微控制器


該問答將自動從英語翻譯而來。原始內容可在stackexchange上找到,我們感謝它分發的cc by-sa 3.0許可。
Loading...