From WikiChip
Difference between revisions of "general instrument/sba"
Line 29: | Line 29: | ||
| {{\|SBA-1}} || 120x1 bits || || 31 || external storage | | {{\|SBA-1}} || 120x1 bits || || 31 || external storage | ||
|- | |- | ||
− | | {{\|SBA-2}} || 120x1 bits || 2048x8 bits || 31 || | + | | {{\|SBA-2}} || 120x1 bits || 2048x8 bits || 31 || ?ever released? |
|} | |} | ||
+ | |||
+ | == Architecture == | ||
+ | The SBA family had 8-bit instructions of two types: with immediate and without [[immediate value]]. | ||
+ | |||
+ | * With immediate: The 5 [[MSB]]s are reserved for the address, but only up to the 30th address. The opcode is stored in the 3 LSBs. | ||
+ | : <span style="border: 1px solid black; padding: 3px;">{{bin|00000}}-{{bin|11101}}</span><span style="border: 1px solid black; padding: 3px;">{{bin|000}}-{{bin|111}}</span> | ||
+ | * Without immediate: Addresses 30 and 31 are reserved for extended instructions of 8 bits. | ||
+ | : <span style="border: 1px solid black; padding: 3px;">{{bin|11110000}}-{{bin|11111111}}</span> | ||
+ | |||
+ | This scheme allows for 30 addresses and 24 instructions (8 operating on [[immediate value]]s and 16 without immediates). | ||
+ | |||
+ | === Stack === | ||
+ | {{empty section}} | ||
+ | |||
+ | === Instruction Set === | ||
+ | {{isa | ||
+ | | title = SBA ISA | ||
+ | | listing = | ||
+ | {{inst|mn=ANDIN |op={{bin|AAAAA000}} |act={{l|and|In[AAAAA]|Stack[Top]}}}} | ||
+ | {{inst|mn=NANDIN |op={{bin|AAAAA001}} |act={{l|and|{{l|onot|In[AAAAA]}}|Stack[Top]}}}} | ||
+ | {{inst|mn=ANDSS |op={{bin|AAAAA010}} |act={{l|and|Store[AAAAA]|Stack[Top]}}}} | ||
+ | {{inst|mn=NANDSS |op={{bin|AAAAA011}} |act={{l|and|{{l|onot|Store[AAAAA]}}|Stack[Top]}}}} | ||
+ | {{inst|mn=ASP1 |op={{bin|AAAAA100}} |act={{l|and|Store[AAAAA]|Stack[Top]}} ; PUSH(1)}} | ||
+ | {{inst|mn=NASP1 |op={{bin|AAAAA101}} |act={{l|and|{{l|onot|Store[AAAAA]}}|Stack[Top]}} ; PUSH(1)}} | ||
+ | {{inst|mn=STORE |op={{bin|AAAAA110}} |act=Store[AAAAA] = Stack[Top] ; Stack[Top] = 1}} | ||
+ | {{inst|mn=OUTPUT |op={{bin|AAAAA111}} |act=Out[AAAAA] = Stack[Top] ; Stack[Top] = 1}} | ||
+ | {{inst|mn=RESTART |op={{bin|11110000}} |act=restarts evaluation of program}} | ||
+ | {{inst|mn=INVERT |op={{bin|11110001}} |act=Stack[Top] = {{l|onot|Stack[Top]}}}} | ||
+ | {{inst|mn=PAGE |op={{bin|11110010}} |act=Change page}} | ||
+ | {{inst|mn=HOME |op={{bin|11110011}} |act=Back to home page}} | ||
+ | {{inst|mn=PUSH0 |op={{bin|11110100}} |act=PUSH(0)}} | ||
+ | {{inst|mn=PUSH1 |op={{bin|11110101}} |act=PUSH(1)}} | ||
+ | {{inst|mn=PUSHC |op={{bin|11110110}} |act=PUSH(Stack[Top])}} | ||
+ | {{inst|mn=POP |op={{bin|11110111}} |act=POP()}} | ||
+ | {{inst|mn=AND |op={{bin|11111000}} |act=Stack[Top] = {{l|and|Stack[Top]|Stack[Top-1]}}}} | ||
+ | {{inst|mn=OR |op={{bin|11111001}} |act=Stack[Top] = {{l|or|Stack[Top]|Stack[Top-1]}}}} | ||
+ | {{inst|mn=EXOR |op={{bin|11111010}} |act=Stack[Top] = {{l|xor|Stack[Top]|Stack[Top-1]}}}} | ||
+ | {{inst|mn=COMP |op={{bin|11111011}} |act=}} | ||
+ | {{inst|mn=PAND |op={{bin|11111100}} |act={{l|and|PUSH(Stack[Top]|Stack[Top-1])}} ; Stack[Top] = 1}} | ||
+ | {{inst|mn=POR |op={{bin|11111101}} |act={{l|or|PUSH(Stack[Top]|Stack[Top-1])}} ; Stack[Top] = 1}} | ||
+ | {{inst|mn=PEXOR |op={{bin|11111110}} |act={{l|xor|PUSH(Stack[Top]|Stack[Top-1])}} ; Stack[Top] = 1}} | ||
+ | {{inst|mn=PCOMP |op={{bin|11111111}} |act=}} | ||
+ | }} | ||
{{stub}} | {{stub}} |
Revision as of 03:15, 22 January 2016
The GI SBA (Sequential Boolean Analyzer) was a family of 1-bit microcontrollers developed by General Instrument's Microelectronics division. These microcontrollers served as cheap programmable logic controllers, replacing old relay system.
Members
Part | RAM | ROM | I/O Ports | Notes |
---|---|---|---|---|
SBA | 120x1 bits | 1024x8 bits | 31 | |
SBA-1 | 120x1 bits | 31 | external storage | |
SBA-2 | 120x1 bits | 2048x8 bits | 31 | ?ever released? |
Architecture
The SBA family had 8-bit instructions of two types: with immediate and without immediate value.
- With immediate: The 5 MSBs are reserved for the address, but only up to the 30th address. The opcode is stored in the 3 LSBs.
- 000002-1110120002-1112
- Without immediate: Addresses 30 and 31 are reserved for extended instructions of 8 bits.
- 111100002-111111112
This scheme allows for 30 addresses and 24 instructions (8 operating on immediate values and 16 without immediates).
Stack
This section is empty; you can help add the missing info by editing this page. |
Instruction Set
SBA ISA | ||
---|---|---|
Mnemonic | ||
ANDIN | AAAAA0002 | In[AAAAA] · Stack[Top] |
NANDIN | AAAAA0012 | In[AAAAA] · Stack[Top] |
ANDSS | AAAAA0102 | Store[AAAAA] · Stack[Top] |
NANDSS | AAAAA0112 | Store[AAAAA] · Stack[Top] |
ASP1 | AAAAA1002 | Store[AAAAA] · Stack[Top] ; PUSH(1) |
NASP1 | AAAAA1012 | Store[AAAAA] · Stack[Top] ; PUSH(1) |
STORE | AAAAA1102 | Store[AAAAA] = Stack[Top] ; Stack[Top] = 1 |
OUTPUT | AAAAA1112 | Out[AAAAA] = Stack[Top] ; Stack[Top] = 1 |
RESTART | 111100002 | restarts evaluation of program |
INVERT | 111100012 | Stack[Top] = Stack[Top] |
PAGE | 111100102 | Change page |
HOME | 111100112 | Back to home page |
PUSH0 | 111101002 | PUSH(0) |
PUSH1 | 111101012 | PUSH(1) |
PUSHC | 111101102 | PUSH(Stack[Top]) |
POP | 111101112 | POP() |
AND | 111110002 | Stack[Top] = Stack[Top] · Stack[Top-1] |
OR | 111110012 | Stack[Top] = Stack[Top] + Stack[Top-1] |
EXOR | 111110102 | Stack[Top] = Stack[Top] ⊕ Stack[Top-1] |
COMP | 111110112 | |
PAND | 111111002 | PUSH(Stack[Top] · Stack[Top-1]) ; Stack[Top] = 1 |
POR | 111111012 | PUSH(Stack[Top] + Stack[Top-1]) ; Stack[Top] = 1 |
PEXOR | 111111102 | PUSH(Stack[Top] ⊕ Stack[Top-1]) ; Stack[Top] = 1 |
PCOMP | 111111112 |
This article is still a stub and needs your attention. You can help improve this article by editing this page and adding the missing information. |
Facts about "SBA - General Instrument"
designer | General Instrument + |
full page name | general instrument/sba + |
instance of | microcontroller family + |
main designer | General Instrument + |
manufacturer | General Instrument + |
name | GIM SBA + |
package | DIP40 + |
technology | nMOS + |