Report on Chapter 4 Bus-Based Computer Systems

download Report on Chapter 4 Bus-Based Computer Systems

of 2

Transcript of Report on Chapter 4 Bus-Based Computer Systems

  • 7/31/2019 Report on Chapter 4 Bus-Based Computer Systems

    1/2

    Report on "Chapter 4: Bus-Based Computer Systems"

    INTRODUCTION:

    The microprocessor is an important element of the embedded computing system, but it cannot do its job

    without memories and I/O devices. We need to understand how to interconnect microprocessors and devicesusing the CPU bus.

    What is the Bus?

    Mechanism by which the CPU communicates with memory and devices.

    Collection of wires that defines a protocol by which the CPU, memory, and

    devices communicate.

    Protocols controls the communications between devices

    Examples: SPI, I 2 C, USB, UART, etc

    Timing diagrams:

    Specify the behavior of the bus and the system. Shows how the signals on the bus vary over the time.

    Timing Constraints: Make sure that signals go to their proper values at proper time.

    Bus multiplexing: Multiplexed address/ data Reduces # of wires (share the same lines).

    Direct memory access (DMA): Direct memory access (DMA) is a bus operation that allows reads and writes

    not controlled by the CPU. A DMA transfer is controlled by a DMA

    controller, which requests control of the bus from the CPU. After

    gaining control, the DMA controller performs read and write

    operations directly between devices and memory.

    System Bus Configurations: A microprocessor system often has more

    than one bus.

    High-speed devices >> connected to a high-performance bus

    Lower-speed devices >> connected to a different bus

    Bridge: Allows the buses to connect to each other, Serves as a protocol translator between the two bridges as

    well.

    ARM AMBA bus: Advanced Microcontroller/or Microprocessor Bus Architecture

    is an open standard, on-chip interconnect specification for the connection and management of functional

    blocks in a (SoC).

    AHB supports pipelining, burst transfers, split transactions, multiple bus masters.

    All devices are slaves on APB. (To be able to control the operations)

    Memory Device Organization

    Several different types of memory: DRAM, SRAM, Flash, ROM.

    Each type of memory comes in varying: Capacities, Widths.

    Random-access memory: Dynamic RAM is dense, requires refresh.

    Synchronous DRAM is dominant type.

    SDRAM uses clock to improve performance, pipeline memory accesses.

    Static RAM is faster, less dense, consumes more power.

  • 7/31/2019 Report on Chapter 4 Bus-Based Computer Systems

    2/2

    I/O DEVICES

    Timers and Counters: Commonly used in embedded computing systems

    A timer is incremented by a periodic signal;

    A counter is incremented by an asynchronous, occasional signal.

    Watchdog timer: Watchdog timer is periodically reset by system timer, If watchdog is not reset, it generatesan interrupt to reset the CPU.

    ADC and DAC conversion: Often used to interface non-digital devices to embedded systems.

    COMPONENT INTERFACING: Building the logic to interface a device to a bus is not too difficult. Determine

    your components, Read datasheets, Study Application notes,

    make a sample board for testing.

    System architectures: Architectures and components:

    Software: (Compiler, assembler, Instruction sets, etc.)

    Hardware: (CPU, bus, memory, I/O devices, etc.)

    Some software is very hardware-dependent. Hardware and software architectures:

    Hardware design: we can do this in two levels with different

    methods: Board level, I/O devices level.

    The PC as a platform: For low-volume applications and environments such as factories and offices

    where size and power are not critical, we use a PC to build an embedded system.

    Typical busses: - PCI: standard for high-speed interfacing 33 or 66 MHz,

    - USB (Universal Serial Bus), Fire-wire (IEEE 1394): relatively low-cost serial interface with high speed.Development Environments:The Embedded System software development on a PC known as a host-Use

    a host system to prepare software for target system.The host and target are connected by a USB link (or

    other links)

    Cross compiler: compiles code on host for target system.

    Cross debugger: displays target state, allows target system to be controlled.Debugging Techniques: Debugging by software is a monitor program residing on the target provides

    basic debugger functions. A common debugging tool is the breakpoint technique; it can be achieved by

    modifying some instructions with an instruction that calls the monitoring program, so user can stop

    execution of the program, examine system state, and/or change states before continuing execution.

    In-circuit emulators: A microprocessor in-circuit emulator is a specially-instrumented microprocessor, Allows

    you to stop execution, examine CPU state, modify registers. It is a specialized hardware tool that can help

    debug software in a working embedded system.Debugging Techniques Challenges:

    target system may be hard to observe; target may be hard to control; may be hard to generate realistic inputs; Setup sequence may be complex.System- Level performance analysis: we must take in account the effect of all system elements on the

    performance like CPU, buses, Memory and I/O devices.