Digital Logic Design and Computer Organization with Computer Architecture for Security

Gebonden Engels 2014 9780071836906
Verwachte levertijd ongeveer 11 werkdagen

Samenvatting

Publisher's Note: Products purchased from Third Party sellers are not guaranteed by the publisher for quality, authenticity, or access to any online entitlements included with the product.

A COMPREHENSIVE GUIDE TO THE DESIGN & ORGANIZATION OF MODERN COMPUTING SYSTEMS

Digital Logic Design and Computer Organization with Computer Architecture for Security provides practicing engineers and students with a clear understanding of computer hardware technologies. The fundamentals of digital logic design as well as the use of the Verilog hardware description language are discussed. The book covers computer organization and architecture, modern design concepts, and computer security through hardware.

Techniques for designing both small and large combinational and sequential circuits are thoroughly explained. This detailed reference addresses memory technologies, CPU design and techniques to increase performance, microcomputer architecture, including "plug and play" device interface, and memory hierarchy. A chapter on security engineering methodology as it applies to computer architecture concludes the book. Sample problems, design examples, and detailed diagrams are provided throughout this practical resource.

COVERAGE INCLUDES:Combinational circuits: small designsCombinational circuits: large designsSequential circuits: core modulesSequential circuits: small designsSequential circuits: large designsMemoryInstruction set architectureComputer architecture: interconnectionMemory systemComputer architecture: security

Specificaties

ISBN13:9780071836906
Taal:Engels
Bindwijze:gebonden

Lezersrecensies

Wees de eerste die een lezersrecensie schrijft!

Inhoudsopgave

1 Introduction<br/>1.1 Introduction<br/>1.1.1 Data Representation<br/>1.1.2 Data Path<br/>1.1.3 Computer Systems<br/>1.1.4 Embedded Systems<br/>1.2 Logic Design<br/>1.2.1 Circuit Minimization<br/>1.2.2 Implementation<br/>1.2.3 Types of Circuits<br/>1.2.4 Computer-Aided Design Tools<br/>1.3 Computer Organization<br/>1.4 Computer Architecture<br/>1.4.1 Pipelining<br/>1.4.2 Parallelism<br/>1.5 Computer Security<br/>References<br/>Exercises<br/>2 Combinational Circuits: Small Designs<br/>2.1 Introduction<br/>2.1.1 Signal Naming Standards<br/>2.2 Logic Expressions<br/>2.2.1 Sum of Product Expression<br/>2.2.2 Product of Sum Expression<br/>2.3 Canonical Expression<br/>2.3.1 Min-Terms<br/>2.3.2 Max-Terms<br/>2.4 Logic Minimization<br/>2.4.1 Karnaugh Map<br/>2.4.2 K-Map Minimization<br/>2.5 Logic Minimization Algorithm<br/>2.5.1 Minimization Software<br/>2.6 Circuit Timing Diagram<br/>2.6.1 Signal Propagation Delay<br/>2.6.2 Fan-In and Fan-Out<br/>2.7 Other Gates<br/>2.7.1 Buffer<br/>2.7.2 Open Collector Buffer<br/>2.7.3 Tri-State Buffer<br/>2.8 Design Examples<br/>2.8.1 Full Adder<br/>2.8.2 Multiplexer<br/>2.8.3 Decoder<br/>2.8.4 Encoder<br/>2.9 Implementation<br/>2.9.1 Programmable Logic Devices<br/>2.9.2 Design Flow<br/>2.10 Hardware Description Languages<br/>2.10.1 Structural Model<br/>2.10.2 Propagation Delay Simulation<br/>2.10.3 Behavioral Modeling<br/>2.10.4 Synthesis and Simulation<br/>References<br/>Exercises<br/>3 Combinational Circuits: Large Designs<br/>3.1 Introduction<br/>3.1.1 Top-Down Design Methodology<br/>3.2 Arithmetic Functions<br/>3.3 Adder<br/>3.3.1 Carry Propagate Adder<br/>3.3.2 Carry Look-Ahead Adder<br/>3.4 Subtractor<br/>3.5 2’s Complement Adder/Subtractor<br/>3.6 Arithmetic Logic Unit<br/>3.6.1 Design Partitioning: Bit-Parallel<br/>3.6.2 Design Partitioning: Bit-Serial<br/>3.7 Design Examples<br/>3.7.1 Multiplier<br/>3.7.2 Divider<br/>3.8 Real Number Arithmetic<br/>3.8.1 Floating-Point Standards<br/>3.8.2 Floating-Point Data Space<br/>3.8.3 Floating-Point Arithmetic<br/>3.8.4 Floating-Point Unit<br/>References<br/>Exercises<br/>4 Sequential Circuits: Core Modules<br/>4.1 Introduction<br/>4.2 SR Latch<br/>4.2.1 Clocked SR Latch<br/>4.3 D-Latch<br/>4.4 Disadvantage of Latches<br/>4.5 D Flip-Flop<br/>4.5.1 Alternative Circuit<br/>4.5.2 Operating Conventions<br/>4.5.3 Setup and Hold Times<br/>4.6 Clock Frequency Estimation without Clock Skew<br/>4.7 Flip-Flop with Enable<br/>4.8 Other Flip-Flops<br/>4.9 Hardware Description Language Models<br/>References<br/>Exercises<br/>5 Sequential Circuits: Small Designs<br/>5.1 Introduction<br/>5.2 Introduction to FSM: Register Design<br/>5.2.1 Register Model<br/>5.2.2 Multifunction Registers<br/>5.3 Finite State Machine Design<br/>5.3.1 Binary Encoded States<br/>5.3.2 One-Hot Encoded States<br/>5.4 Counters<br/>5.5 Fault-Tolerant Finite State Machine<br/>5.5.1 Hamming Coding Scheme<br/>5.6 Sequential Circuit Timing<br/>5.6.1 Clock Frequency Estimation with Clock Skew<br/>5.6.2 Asynchronous Interface<br/>5.7 Hardware Description Language Models<br/>5.7.1 Synthesis and Simulation<br/>References<br/>Exercises<br/>6 Sequential Circuits: Large Designs<br/>6.1 Introduction<br/>6.1.1 Register Transfer Notation<br/>6.2 Data Path Design<br/>6.2.1 Single-Cycle<br/>6.2.2 Multicycle<br/>6.2.3 Pipelined<br/>6.3 Control Unit Design Techniques<br/>6.3.1 Hardwired Control: FSD<br/>6.3.2 Microprogrammed Control<br/>6.3.3 Hardwire Control: Pipeline<br/>6.4 Energy and Power Consumption<br/>6.5 Design Examples<br/>6.5.1 Unsigned Sequential Multiplier<br/>6.5.2 Signed Sequential Multiplier<br/>6.5.3 Computer Graphics: Rotation<br/>References<br/>Exercises<br/>7 Memory<br/>7.1 Introduction<br/>7.2 Memory Technologies<br/>7.2.1 Read-Only Memories<br/>7.2.2 Random Access Memories<br/>7.2.3 Applications<br/>7.3 Memory Cell Array<br/>7.3.1 Word Access<br/>7.3.2 Burst Access<br/>7.4 Memory Organization<br/>7.4.1 Modern DRAMs<br/>7.4.2 SRAM Cell Model<br/>7.4.3 Internal Organization: SRAM Chip<br/>7.4.4 Memory Unit Design<br/>7.5 Memory Timing<br/>7.5.1 SRAM<br/>7.5.2 DRAM<br/>7.5.3 SDRAM<br/>7.5.4 DDR SDRAM<br/>7.6 Memory Architecture<br/>7.6.1 High-Order Interleaving<br/>7.6.2 Low-Order Interleaving<br/>7.6.3 Multichannel<br/>7.7 Design Example: Multiprocessor Memory Architecture<br/>7.7.1 UMA versus NUMA<br/>7.7.2 A NUMA Application<br/>7.8 HDL Models<br/>References<br/>Exercises<br/>8 Instruction Set Architecture<br/>8.1 Introduction<br/>8.1.1 Type of Instructions<br/>8.1.2 Program Translation<br/>8.1.3 Instruction Cycle<br/>8.2 Types of Instruction Set Architecture<br/>8.2.1 Addressing Modes<br/>8.2.2 Instruction Format<br/>8.2.3 Stack-ISA<br/>8.2.4 Accumulator-ISA<br/>8.2.5 CISC-ISA<br/>8.2.6 RISC-ISA<br/>8.3 Design Example<br/>8.3.1 Acc-ISA Instruction Set Design<br/>8.3.2 Acc-ISA Processor: Single-Cycle<br/>8.3.3 Acc-ISA Processor: Pipelined<br/>8.3.4 RISC-ISA Processor<br/>8.4 Advanced Processor Architectures<br/>8.4.1 Deep Pipelining<br/>8.4.2 Branch Prediction<br/>8.4.3 Instruction-Level Parallelism<br/>8.4.4 Multithreading<br/>References<br/>Exercises<br/>9 Computer Architecture: Interconnection<br/>9.1 Introduction<br/>9.1.2 Interconnection Architectures<br/>9.2 Memory Controller<br/>9.2.1 Simple Memory Controller<br/>9.2.2 Modern Memory Controller<br/>9.3 I/O Peripheral Devices<br/>9.4 Controlling and Interfacing I/O Devices<br/>9.4.1 I/O Ports<br/>9.5 Data Transfer Mechanisms<br/>9.5.1 Interrupt-Driven Transfer<br/>9.5.2 Programmed Transfer<br/>9.5.3 DMA Transfer<br/>9.6 Interrupts<br/>9.6.1 Handling Interruptions<br/>9.6.2 Interrupt Structures<br/>9.7 Design Example: Interrupt Handling CPU<br/>9.8 USB Host Controller Interface<br/>9.8.1 Standards<br/>9.8.2 Transactions<br/>9.8.3 Transfers<br/>9.8.4 Descriptors<br/>9.8.5 Frames<br/>9.8.6 Transaction Organization<br/>9.8.7 Transaction Execution<br/>References<br/>Exercises<br/>10 Memory System<br/>10.1 Introduction<br/>10.1.1 Memory Hierarchy<br/>10.2 Cache Mapping<br/>10.2.1 Direct Mapping<br/>10.2.2 Types of Cache Misses<br/>10.2.3 Set-Associative Mapping<br/>10.3 Cache Coherency<br/>10.3.1 Invalidation versus Update Protocols<br/>10.3.2 Snoop Cache Coherence Protocol<br/>10.3.3 Write-Through Protocol<br/>10.3.4 Write-Back Protocols<br/>10.4 Virtual Memory<br/>10.4.1 Virtual Address Translation<br/>10.4.2 Translation Lookaside Buffer<br/>10.4.3 Processor Organization<br/>References<br/>Exercises<br/>11 Computer Architecture: Security<br/>11.1 Introduction<br/>11.1.1 Security Engineering Methodology<br/>11.1.2 Threat Classes<br/>11.1.3 Access Control and Types<br/>11.1.4 Security Policy Models<br/>11.1.5 Attack Classes<br/>11.2 Hardware Backdoor Attacks<br/>11.2.1 Data and Control Attacks<br/>11.2.2 Timer Attack<br/>11.2.3 Security Policy Mechanisms<br/>11.3 Software/Physical Attacks<br/>11.3.1 Spoofing<br/>11.3.2 Splicing<br/>11.3.3 Replay<br/>11.3.4 Man-in-the-Middle<br/>11.4 Trusted Computing Base<br/>11.5 Cryptography<br/>11.5.1 Symmetric-Key Ciphers<br/>11.5.2 Modes of Operation<br/>11.5.3 Asymmetric-Key Ciphers<br/>11.6 Hashing<br/>11.7 Cryptography Hash<br/>11.7.1 Message Authentication Code<br/>11.7.2 Hash MAC<br/>11.8 Storing Cryptography Keys through Hardware<br/>11.8.1 Keychain Organization<br/>11.8.2 Storage and Access<br/>11.8.3 Application Example: Keychain as Access Control<br/>11.9 Hash Tree<br/>11.9.1 Application Example: Keychain Authentication<br/>11.9.2 Application Example: Memory Authentication<br/>11.10 Secure Coprocessor Architecture<br/>11.10.1 Trusted Platform Module<br/>11.11 Secure Processor Architecture<br/>11.11.1 Program Code Integrity<br/>11.11.2 Operational Security Mechanisms<br/>11.11.3 Program Code Confidentiality<br/>11.11.4 Program Code Integrity and Confidentiality<br/>11.11.5 Program Data Integrity<br/>11.11.6 Program Data Confidentiality<br/>11.11.7 Program Data Integrity and Confidentiality<br/>11.11.8 Program Code and Data Integrity and Confidentiality<br/>11.11.9 Handling Interruption<br/>11.12 Design Example: Secure Processor<br/>11.12.1 SP Specification<br/>11.12.2 Processor Architecture<br/>11.12.3 Encryption Decryption Hashing Engine<br/>11.12.4 Hash Tree Engine<br/>11.13 Further Reading<br/>References<br/>Exercises<br/>Bibliography<br/>Index

Managementboek Top 100

Rubrieken

    Personen

      Trefwoorden

        Digital Logic Design and Computer Organization with Computer Architecture for Security