Журнал LinuxFormat - перейти на главную

LXF162:CPU своими руками

Материал из Linuxformat
(Различия между версиями)
Перейти к: навигация, поиск
(Новая страница: «Категория: Главное в мире Linux ==CPU свои­ми ру­ка­ми== ''Часть вто­рая'' ''Еще два ком­по­н…»)
 
(Де­ко­дер)
Строка 18: Строка 18:
  
 
По су­ти, все де­ко­де­ры по­зво­ля­ют сде­лать вы­бор из мно­же­ст­ва вы­хо­дов, ис­поль­зуя толь­ко по­ло­ви­ну вхо­дов. Бо­лее кон­крет­но – при един­ст­вен­ном вхо­де де­ко­дер по­зво­лит вам вы­би­рать ме­ж­ду дву­мя вы­хо­да­ми, два вхо­да обес­пе­чат вам вы­бор из че­ты­рех вы­хо­дов, и т. д. В слу­чае де­ко­де­ров мы го­во­рим не о вхо­де и вы­хо­де, а об ад­рес­ной линии и линии пе­ре­да­чи дан­ных. Таб­ли­ца ис­тин­но­сти для про­сто­го линей­но­го де­ко­де­ра 1-в-2 раз­ме­ще­на ниже, а схе­ма со­единений при­ве­де­на на рис. 1.
 
По су­ти, все де­ко­де­ры по­зво­ля­ют сде­лать вы­бор из мно­же­ст­ва вы­хо­дов, ис­поль­зуя толь­ко по­ло­ви­ну вхо­дов. Бо­лее кон­крет­но – при един­ст­вен­ном вхо­де де­ко­дер по­зво­лит вам вы­би­рать ме­ж­ду дву­мя вы­хо­да­ми, два вхо­да обес­пе­чат вам вы­бор из че­ты­рех вы­хо­дов, и т. д. В слу­чае де­ко­де­ров мы го­во­рим не о вхо­де и вы­хо­де, а об ад­рес­ной линии и линии пе­ре­да­чи дан­ных. Таб­ли­ца ис­тин­но­сти для про­сто­го линей­но­го де­ко­де­ра 1-в-2 раз­ме­ще­на ниже, а схе­ма со­единений при­ве­де­на на рис. 1.
 +
[[Файл:LXF162.feat_cpu.figure6_opt.png |left |300px ]]
  
 
Как ви­ди­те, все очень про­сто. Ад­рес­ная линия раз­двое­на, и вход NOT раз­ме­щен на од­ном от­ветв­лении это­го раз­двоения. Та­ким об­ра­зом, толь­ко од­на из этих линий пе­ре­да­чи дан­ных мо­жет за один раз пе­ре­дать 1.
 
Как ви­ди­те, все очень про­сто. Ад­рес­ная линия раз­двое­на, и вход NOT раз­ме­щен на од­ном от­ветв­лении это­го раз­двоения. Та­ким об­ра­зом, толь­ко од­на из этих линий пе­ре­да­чи дан­ных мо­жет за один раз пе­ре­дать 1.
[[Файл:LXF162.feat_cpu.figure6_opt.png |left |300px ]]
 

Версия 04:15, 13 октября 2018


CPU свои­ми ру­ка­ми

Часть вто­рая

Еще два ком­по­нен­та элек­трон­но­го серд­ца ва­ше­го CPU: Джо­на­тан Ро­бертс под­во­дит вас на шаг бли­же к ра­бо­че­му про­цес­со­ру.

В LXF158 мы по­ка­за­ли вам, как по­стро­ить соб­ст­вен­ный ком­пь­ю­тер из ба­зо­вых элек­трон­ных бло­ков. По су­ти, мы из­го­то­ви­ли дво­ич­ный сум­ма­тор. Мы за­кон­чи­ли ста­тью, ска­зав, что соз­дан­ное на­ми — это еще да­ле­ко не на­стоя­щий ком­пь­ю­тер, и вам нуж­ны еще несколь­ко ком­понен­тов, пре­ж­де чем ва­ша ма­ши­на смо­жет пре­тен­до­вать на звание ком­пь­ю­те­ра.

В этой ста­тье мы рас­смот­рим дальней­шие ша­ги и пред­ста­вим вам еще несколь­ко ком­понен­тов, про­де­мон­ст­ри­ро­вав, как рас­ши­рить воз­мож­но­сти ва­ше­го сум­ма­то­ра до вы­полнения дру­гих дей­ст­вий (AND [И], XOR [ИСКЛ.ИЛИ] и NOT [ИЛИ]) и соз­дать це­пи па­мя­ти для хранения вво­да и вы­во­да.

Пе­ред чтением этой ста­тьи вам сто­ит про­честь пре­ды­ду­щую часть, что­бы осве­жить па­мять, по­сколь­ку мы ис­хо­дим из то­го, что вы с ней оз­на­ком­ле­ны. Ес­ли у вас нет эк­зем­п­ля­ра LXF158, вы смо­же­те най­ти PDF этой ста­тьи на дис­ке это­го ме­ся­ца.

Де­ко­дер

Пер­вый ком­понент, ко­то­рый мы рас­смот­рим – это де­ко­дер, или, точнее, линей­ный де­ко­дер. Он очень прост, но очень удо­бен в ра­бо­те и сам по се­бе, и де­ко­де­ры так­же ис­поль­зу­ют­ся в муль­ти­п­лек­со­рах – что ис­клю­чи­тель­но важ­но для осталь­ной час­ти на­шей ста­тьи.

По су­ти, все де­ко­де­ры по­зво­ля­ют сде­лать вы­бор из мно­же­ст­ва вы­хо­дов, ис­поль­зуя толь­ко по­ло­ви­ну вхо­дов. Бо­лее кон­крет­но – при един­ст­вен­ном вхо­де де­ко­дер по­зво­лит вам вы­би­рать ме­ж­ду дву­мя вы­хо­да­ми, два вхо­да обес­пе­чат вам вы­бор из че­ты­рех вы­хо­дов, и т. д. В слу­чае де­ко­де­ров мы го­во­рим не о вхо­де и вы­хо­де, а об ад­рес­ной линии и линии пе­ре­да­чи дан­ных. Таб­ли­ца ис­тин­но­сти для про­сто­го линей­но­го де­ко­де­ра 1-в-2 раз­ме­ще­на ниже, а схе­ма со­единений при­ве­де­на на рис. 1.

LXF162.feat cpu.figure6 opt.png

Как ви­ди­те, все очень про­сто. Ад­рес­ная линия раз­двое­на, и вход NOT раз­ме­щен на од­ном от­ветв­лении это­го раз­двоения. Та­ким об­ра­зом, толь­ко од­на из этих линий пе­ре­да­чи дан­ных мо­жет за один раз пе­ре­дать 1.

Персональные инструменты
купить
подписаться
Яндекс.Метрика