Computer Basis

INTRO

0. INTRO.
0.0.
0.1.
1.
1.1.

2. :
2.1.
2.2.
2.3.
2.4.
2.5.
2.5.1.
2.6.
2.6.1. -
2.6.1.1. -
2.6.2.
2.7.
2.8.
2.8.1.
2.10.
2.11.
2.12.
2.13.
2.14.
2.15.
2.16.
2.17.

3.
3.1.
3.2.
3.3.
3.3.1.
3.4.1.
3.4.2.
3.4.3.
3.4.4.
3.4.5.
3.3.6.
3.4.7. 36
3.5. C
3.5.1.
3.5.2.
3.5.3.
3.5.4. 4
3.5.5. - 4
3.6. C -2
3.7.
3.8. ()
3.9. BCD
3.10.1.
3.10.2
3.11.
3.12. C .
3.13.
3.14.
3.15.
3.16.
3.16.1.
3.16.2.
3.16.3.
3.16.4.
3.17.1. GF[p]
3.17.2.
3.17.3. GF[p,k]
3.18. (RNS)
3.19.
3.20.

4.
4.1.
4.1.1.
4.1.2.
4.1.3. HDLs
4.2.
4.3.1.
4.3.2.
4.3.3. (BJT)
4.3.4. (JFET)
4.3.5. MOSFET
4.3.6.
4.4.
4.4.1. (NMOS)
4.4.2. (CMOS)
4.4.2.1. CMOS
4.4.2.2. CMOS
4.4.2.3.
4.4.2.4. BiCMOS
4.4.2.5. CMOS
4.4.2.6. IDLE
4.4.2.7. PTL (PASS-TRANSISTOR LOGIC)
4.4.2.8.
4.4.3.
4.4.3.1. CMOS
4.4.3.2.
4.4.4.1.
4.4.4.2.
4.4.4.3.
4.4.5. -
4.4.5.1.
4.4.5.2.
4.4.6. I2L ( )
4.4.7. TTL
4.5. HDL
4.5.1.
4.5.2.
4.5.3.
4.5.4.
4.5.5.
4.6.
4.7. SPICE
4.8.
4.9.

5.
5.1. RS-
5.2. RS-
5.3. JK-
5.4. D-
5.5. T-
5.6.
5.7.

-

6.
6.0.
6.0.1.
7.
7.1.
7.2.
7.3.
8.
9.
10.
10.1.
11.1.
11.2.
11.3.
11.4.
11.5.
11.6.
11.7. ?
11.8. HDL
11.9.
11.10. BCD
11.11.
11.12. / ( )
11.13. -
11.14. RSN
12.
13.
13.1.
13.2. -
14.
14.1.
14.2.
14.3.
14.4. (NMM)
14.5. :
15. CPU
15.1.
16.
16.1.
16.1.1.
16.2.
16.3.
16.4.
16.4.1.
16.4.2.
16.4.3. -
16.5. CRC ( )
16.6. -
16.7.
16.8.
16.9.
16.9.1. EVENODD
16.9.2. WEAVER
17.
18.
19.
20.1.
20.2.
20.3.
21.
22.
24. CPLD FPGA

25.
25.0 SRAM ( )
25.1. ROM
25.2. PROM
25.3. EPROM EEPROM
25.3.1. FLASH
25.3.2. FeRAM
25.4. DRAM
25.4.1. DRAM
25.4.2. DRAM

30. (CPU)
30.1. ALU
30.1.1. ALU VHDL.
30.2.
30.2.1.
30.3. CONTROL UNIT
30.3.1.
30.3.1.1.
30.3.1.2. DECODER
30.3.2. ADDRESS GENERATION UNIT
30.3.2.1.
30.3.3.
30.3.3.1.
30.3.4.
30.3.5.
30.3.6.
30.4. BUS INTERFACE UNIT
30.4.1.
30.4.2.
30.4.3.
30.4.4.
30.4.5.
30.5. FLOATING POINT UNIT
30.5.1. FP UNIT CONTROL AND STATUS REGISTERS
30.6. MULTIMEDIA UNIT
30.6.1. MULTIMEDIA UNIT

35.
35.1.1. DEC ALPHA
35.1.2. MOTOROLA 68K
35.1.3. POWER PC
35.1.4. MIPS
35.1.5. SPARC
35.1.6. HP-PA
35.1.7. IA-32 (X86)
35.1.7.2. X86-64 (AMD64)
35.1.8. IA-64
35.1.9. ARM
35.2.
35.2.1
35.2.1.1.
35.2.1.2.
35.2.1.3.
35.2.1.4.
35.2.1.4.2.
35.2.1.5.
35.2.1.6.
35.2.1.7. ,
35.2.1.8.
35.2.1.9.
35.2.1.10
32.2.2.11.
35.2.2. FP
35.2.3.
35.2.3.1. INTEGER VECTOR CODE ISA SUMMARY
35.2.4. FP
35.2.4.1. FLOATING POINT VECTOR SUMMARY
35.3. DETAILED INSTRUCTION SET SUMMARY
35.3.1 INTEGER ARITHMETICAL INSTRUCTIONS
35.3.1.1. INTEGER ARITHMETICAL ON SPARC
35.3.1.2. INTEGER ARITHMETICAL ON ALPHA
35.3.1.3. INTEGER ARITHMETICAL ON HP-PA
35.3.1.4. INTEGER ARITHMETICAL ON MIPS
35.3.1.5. INTEGER ARITHMETICAL ON POWER PC
35.3.1.6. INTEGER ARITHMETICAL ON 68K
35.3.1.8. INTEGER ARITHMETICAL ON X86
35.3.1.9. INTEGER ARITHMETICAL ON IA64
35.3.1.10 INTEGER ARITHMETICAL ON JAVA VIRTUAL MACHINE
35.3.1.11. INTEGER ARITHMETICAL ON MCS51
35.3.2 INTEGER LOGICAL INSTRUCTIONS
35.3.2.1. INTEGER LOGICAL ON SPARC
35.3.2.2. INTEGER LOGICAL ON ALPHA
35.3.2.3. INTEGER LOGICAL ON HP-PA
35.3.2.4. INTEGER LOGICAL ON MIPS
35.3.2.5. INTEGER LOGICAL ON POWER PC
35.3.2.6. INTEGER LOGICAL ON 68K
35.3.2.8. INTEGER LOGICAL ON X86
35.3.2.9. INTEGER LOGICAL ON IA64
35.3.2.10 INTEGER LOGICAL ON JAVA VIRTUAL MACHINE
35.3.2.11. INTEGER LOGICAL ON MCS51
35.3.3 INTEGER SHIFT/ROTATES INSTRUCTIONS
35.3.3.1. INTEGER SHIFTS/ROTATES ON SPARC
35.3.3.2. INTEGER SHIFT/ROTATES ON ALPHA
35.3.3.3. INTEGER SHIFT/ROTATE ON HP-PA
35.3.3.4. INTEGER SHIFT/ROTATE ON MIPS
35.3.3.5. INTEGER SHIFTS/ROTATES ON POWER PC
35.3.3.6. INTEGER SHIFT/ROTATES ON 68K
35.3.3.8. INTEGER SHIFTS/ROTATES ON X86
35.3.3.9. INTEGER SHIFTS/ROTATES ON IA64
35.3.3.10 INTEGER SHIFTS/ROTATES ON JAVA VIRTUAL MACHINE
35.3.3.11. INTEGER ARITHMETICAL ON MCS51
35.3.4 INTEGER LOAD/STORE INSTRUCTIONS
35.3.4.1. INTEGER LOAD/STORE ON SPARC
35.3.4.2. INTEGER LOAD/STORE ON ALPHA
35.3.4.3. INTEGER LOAD/STORE ON HP-PA
35.3.4.4. INTEGER LOAD/STORE ON MIPS
35.3.4.5. INTEGER LOAD/STORE ON POWER PC
35.3.4.6. INTEGER LOAD/STORE ON 68K
35.3.4.8. INTEGER LOAD/STORE ON X86
35.3.1.9. INTEGER ARITHMETICAL ON IA64
35.3.4.10 INTEGER LOAD/STORE ON JAVA VIRTUAL MACHINE
35.3.4.11. INTEGER LOAD/STORE ON MCS51
35.3.5 INTEGER CONVERTIONS INSTRUCTIONS
35.3.5.1. INTEGER CONVERTIONS ON SPARC
35.3.5.2. INTEGER CONVERTIONS ON ALPHA
35.3.5.3. INTEGER CONVERSIONS ON HP-PA
35.3.5.4. INTEGER CONVERTIONS ON MIPS
35.3.5.5. INTEGER CONVERSIONS ON POWER PC
35.3.5.6. INTEGER CONVERSIONS ON 68K
35.3.5.8. INTEGER CONVERSIONS ON X86
35.3.5.9. INTEGER CONVERSIONS ON IA64
35.3.5.10 INTEGER CONVERSION ON JAVA VIRTUAL MACHINE
35.3.5.11. INTEGER CONVERSION ON MCS51
35.3.6. COMPARES AND CONDITIONAL JUMPS INSTRUCTIONS
35.3.6.1. INTEGER COMPARE AND CONDITIONAL JUMPS ON SPARC
35.3.6.2. INTEGER COMPARE AND CONDITIONAL JUMPS ON ALPHA
35.3.6.3. INDEGER COMPARES AND CONDITIONAL JUMPS ON HP-PA
35.3.6.4. INTEGER COMPARES AND CONDITIONAL JUMPS ON MIPS
35.3.6.5. INTEGER COMPARES AND CONDITIONAL JUMPS ON POWER PC
35.3.6.6. INTEGER COMPARES AND CONDITIONAL JUMPS ON 68K
35.3.6.8. INTEGER COMPARES AND CONDITIONAL JUMPS ON X86
35.3.6.9. INTEGER COMPARES AND CONDITIONAL JUMPS ON IA64
35.3.6.10 INTEGER COMPARES AND CONDITIONAL JUMPS ON JAVA VIRTUAL MACHINE
35.3.6.11. INTEGER COMPARES AND CONDITIONAL JUMPS ON MCS51
35.3.7. UNCONDITIONAL JUMPS AND CALLS INSTRUCTIONS
35.3.7.1. UNCONDITIONAL JUMPS AND CALLS ON SPARC
35.3.7.2. UNCONDITIONAL JUMPS AND CALLS ON ALPHA
35.3.7.3. UNCONDITIONAL JUMPS AND CALLS ON HP-PA
35.3.7.4. UNCONDITIONAL JUMPS AND CALLS ON MIPS
35.3.7.5. UNCONDITIONAL JUMPS AND CALLS ON POWER PC
35.3.7.6. UNCONDITIONAL JUMPS AND CALLS ON 68K
35.3.7.8. UNCONDITIONAL JUMPS AND CALLS ON X86
35.3.7.9. UNCONDITIONAL JUMPS AND CALLS ON IA64
35.3.7.10 UNCONDITIONAL JUMPS AND CALLS ON JAVA VIRTUAL MACHINE
35.3.7.11. UNCONDITIONAL JUMPS AND CALLS ON MCS51
35.3.8 INTEGER CONDITIONAL MOVES AND SETS INSTRUCTIONS
35.3.8.1. INTEGER CONDITIONAL MOVES AND SETS ON SPARC
35.3.8.2. INTEGER CONDITIONAL MOVES AND SETS ON ALPHA
35.3.8.3. INTEGER CONDITIONAL MOVES AND SETS ON HP-PA
35.3.8.4. INTEGER CONDITIONAL MOVES AND SETS ON MIPS
35.3.8.5. INTEGER CONDITIONAL MOVES AND SETS ON POWER PC
35.3.8.6. INTEGER CONDITIONAL MOVES AND SETS ON 68K
35.3.8.8. INTEGER CONDITIONAL MOVES AND SETS ON X86
35.3.8.9. INTEGER CONDITIONAL MOVES AND SET ON IA64
35.3.9.10 INTEGER CONDITINAL MOVES AND SETS ON JAVA VIRTUAL MACHINE
35.3.9.11. INTEGER CONDITIONAL MOVES AND SETS ON MCS51
35.3.9 INTEGER BITS AND BITSTRINGS INSTRUCTIONS
35.3.9.1. INTEGER BITS AND BITSTRINGS ON SPARC
35.3.9.2. INTEGER BITS AND BITSTRING ON ALPHA
35.3.9.3. INTEGER BIT AND BIT STRINGS ON HP-PA
35.3.9.4. INTEGER BITS AND BITS STRINGS ON MIPS
35.3.9.5. INTEGER BITS AND BITS STRINGS ON POWER PC
35.3.9.6. INTEGER BITS AND BIT STRINGS ON 68K
35.3.9.8. INTEGER BITS AND BITSTRING ON X86
35.3.9.9. INTEGER BITS AND BITSTRINGS ON IA64
35.3.9.10 INTEGER BITS AND BITS STRINGS ON JAVA VIRTUAL MACHINE
35.3.9.11. INTEGER BITS AND BITSTRINGS ON MCS51

40.
40.1.
40.1.1.
40.1.2.
40.1.3.
40.2.
40.2.1. NLS
40.2.2. NLS
40.3. LI SLI
40.10.
40.11.
40.12.
41.
41.1.
41.2.
41.3.
41.4.
41.5.
41.6
41.7

50.
50.1.
50.2. ,
50.2.1.
50.3.
50.3.1.
50.3.2. ()
50.3.3. SOFTWARE PIPELINING
50.3.3.
50.4. RISC CISC
50.5. OUT-OF-ORDER EXECUTION
50.6. HYPERTHREADING, MULTIPROCESSING MULTICORE
50.7. CACHE
50.7.1.
50.8.
50.9.
50.9.1.
50.10.
50.11.
50.12.1.
50.13.
50.14. ENVIRONMENT
50.15.
50.16.
50.17.
51. -
51.1.

55.
55.0.
55.1. /
55.1.1.-
55.2.
55.2.1.
55.3.
55.3.0.
55.3.1.
55.3.2.
55.3.3.
55.3.4.
55.3.5.
55.3.5.1.
55.3.5.2. POTS (PLAIN OLD TELEPHONE SERVICES) DSL
55.4.1.
55.4.2. :
55.4.3.
55.5.
55.5.1.
55.5.2.
55.5.3.
55.6.
55.6.1.
55.7.
55.8.
55.9.
55.9.1.
55.9.2.
55.9.3.
55.9.3.1.
55.9.1.2.
55.9.3.2.
55.9.3.4.
55.9.4. ROUTER
55.9.5. (SWITCH)
55.9.6. QoS
55.9.7.
55.10.
55.10.0. RAID
55.10.1.
55.10.1.1.
55.10.2.
55.10.3. -
55.10.4.
55.10.5.
55.11.
55.11.1.
55.11.1.
55.50.
55.51.
55.52.
55.53.

56.
56.0. HARDWARE
56.0.1. LED
56.1.
56.2.
56.2.1. GPU
56.3.
56.4.
56.5.
56.6.
56.7.
56.8.
56.9. GAME
56.10.
57.
57.1.

PC

60. PC
60.1. ISA
60.2. PCI
60.3.1. DMA
60.3.2. PIC
60.3.3. PIT
60.3.4. RTC
60.3.5. FDC
60.3.6. USB
60.3.7.

70.
70.0.1.
70.1.
70.1.1. ENDIAN
70.1.1.1.
70.1.2.
70.1.3.
70.1.4. MACC
70.1.5.
70.1.6.
70.1.7.
70.2.

71.
71.1.
71.2.
71.3.
71.3.1.
71.4.
71.4.1.
71.4.2.
71.4.3. JPEG
71.4.4. MPEG
71.4.5.
71.4.6.
71.4.7. MP3 (MPEG1 LAYER 3)

72.
72.2.
72.3.
72.4.
72.4.1.
72.4.2. -
72.4.3. KERBEROS
72.5.
72.5.1.
72.5.2.
72.6.
72.7.
72.8.
72.9.
72.50.

73.
73.1.
73.2.
73.3.
73.4.
73.5.
73.6.

75. AI
75.1.
75.2.
75.3.
75.4.
75.5.

80.
80.1.1. BIOS
80.1.2.
80.1.2.1. STORAGE DRIVERS
80.1.2.2. FILESYSTEM DRIVERS
80.1.2.3. NETWORKS DRIVERS
80.1.3.
80.1.3.1.
80.1.3.1.1. REAL TIME SCHEDULING
80.1.3.2.
80.1.3.3.
80.1.3.4. IPC
80.1.3.5.
80.1.3.6.1.
80.1.3.6.2.
80.1.3.7. API
80.1.4.
80.1.4.1.
80.1.4.2.
80.1.4.3.
80.1.4.4. MAKE
80.1.4.5.
80.2.1.
80.3.1. BROWSER?
80.3.2. ?
80.3.3. ?
80.3.4. ?
80.3.5.
80.3.6. OCR?

81.
81.1.
81.2.
81.3. STORAGE
81.3.1. STORAGE
81.3.1.1.
81.3.1.2. STORAGE DEVICES
81.3.1.3. FEATURES
81.3.1.4. STORAGE CONTROLLERS
81.3.1.5. STORAGE CONTROLLER
81.3.1.6. SCSILIZER
81.3.1.7. DISK SCHEDULING
81.3.1.8.
81.3.1.8.1. MULTIPATH I/O
81.3.1.9.
81.3.1.10.
8.3.1.11.
8.3.1.12. SOFTWARE RAIDs
8.3.1.13.
8.3.1.14.
81.3.2.1. VFS LAYER
81.3.2.2. CACHE MANAGER
81.3.2.3.
81.3.2.3. FILESYSTEM FILTER DRIVERS
81.3.2.4. FILE SYSTEM DRIVERS (FSD)
81.3.3.1.
81.3.3.2.
81.3.3.3.
81.3.3.4. API
81.3.3.5. RTL
81.3.3.6.
81.3.3.7.
81.4.
81.4.1.
81.4.1.0. ETHERNET
81.4.2.
81.4.3.
81.4.3.1. FORWARDING NETWORK ENVIRONMENT
81.4.4. INTERMEDIATE DRIVERS
81.4.5.
81.4.6.
81.4.7. ROUTING
81.4.8. FILTER DRIVERS
81.4.9. SOCKET PROVIDER
81.4.10.
81.4.11. API
81.4.12. API
81.4.13.
81.5.
81.6.
81.7. GUI
81.7.1.
81.8.
81.9.

82.
82.1.
82.2.

UNDER CONSTRUCTION

83. MIDDLEWARE
84. WEB

99.
99.1.
99.2.
99.3.
99.3.1.
99.3.2.
99.4. DL
99.5. RTL
99.6. DTL
99.8. BJT
99.9.
99.10.
99.11.

OUTRO

100. TESTBENCH
100.1. CLK
100.2. RESET
100.3. TESTBENCH
200.
200.1. (1.X)
200.2. (2.X)
200.3. (3.X)
200.4.
300.
401.
402. SOFTWARE
403. PHG
404.