Raspberry Pi: A Portable and Powerful Single Board Computer
Verified
Added on 2023/03/23
|7
|1783
|74
AI Summary
This article provides an overview of Raspberry Pi, a portable and powerful single board computer. It discusses the architecture, internal and external components, memory, and CPU of Raspberry Pi. It also explores its uses and capabilities.
Contribute Materials
Your contribution can guide someone’s learning journey. Share your
documents today.
Task 1 Raspberry pi Raspberry pi is a portable and a single board computer, small in size (like that of a credit card), and performs a range of tasks just like desktop computer. Raspberry pi is used for browsing, playing video games, playing HD videos, processing word documents and making spreadsheets (Upton, 2014). Raspberry pi has two models, model A and model B, the difference being on the cost, Ethernet and USB ports. Figure 1 shows the architecture of raspberry pi. The components can be decomposed into two parts, internal and external components. Figure 1. Raspberry pi architecture Internal components Memory-raspberry pi program memory (RAM) varies with the model. First release of Model A had 256MB of SDRAM whereas Model B had 51MB of the memory. The RAM memory is made up of splits, allocated for CPU and GPU. For the normal personal computer, RAM memory capacity is in gigabytes. Other releases of raspberry pi however have memory more than 256MB. Central processing unit (CPU)-is the brain of the personal computer and is tasked to execute instructions of the raspberry pi through logical operations. First generation raspberry pi had Broadcom BCM2835 System on chip, with 700MHz ARM11 processor. Generally this type of computer uses ARM11 series of processors. 1
Secure Best Marks with AI Grader
Need help grading? Try our AI Grader for instant feedback on your assignments.
Graphics processing unit (GPU)-this is a chip in the board responsible for speeding up mathematical calculations that results in image, video and animations creation. Raspberry pi GPU uses ‘Broadcom video core IV’ (Maksimovic & Vujovic, 2014 ). External components Ethernet port-this is the main gateway port of the raspberry pi used for communication with external devices. This is the port that is used to connect the home router for internet access. LEDs-the light emitting diodes are used to indicate status of certain operations by a light in the raspberry pi board USB-USB is used to connect all types of peripheral devices to the raspberry pi for example keyboard, mouse etc. Model A of the raspberry pi has one USB port and model B has two ports. USB port can also be used in expanding the number of ports. UART-abbreviation for Universal Asynchronous Receiver and Transmitter is the output and input port of the raspberry pi. This port is used for serial data transfer in form of text. It also used to convert debugging code HDMI-this allows the user to attach high definition TV and other LCD devices to the raspberry pi SD card slot-SD card with operating system installed in it, to be used by the raspberry pi is inserted through the slot Power connector-5 volts USB connector is used for supplying external power source into the raspberry pi. GPIO Pins-they are used for communication with other electronic boards. GPIO pins accepts output and input commands as programmed in raspberry pi Task 2 Memory is a device used for storing data and programs either temporarily or permanently, to be used by a computer or other electronic devices (stalling, 2013). In computer systems there are two types of memory, namely external and internal memory. Internal memory is where small quantity of data is temporarily stored and can be directly and easily accessed by the CPU. Most of the internal storage devices are volatile meaning upon power loss the data is lost. There are three main types of internal memory namely RAM cache and ROM. Random Access Memory 2
This is the memory that holds data and programs that are in use while the computer the operating so as to increase the speed at which it is accessed. It acts as intermediary between the CPU and hard disk and this helps speed up the operation of a computer. Reading data in RAM is faster that that stored in external memory. CPU is responsible for overwriting old data in the RAM when full, so as not to slow down its operations. Its main characteristics are It’s a volatile memory Its expensive RAM reads and writes data at byte level RAM comes in two types, static RAM and dynamic RAM. The differences are outlined in the table 1 Table 1: DRAM versus SRAM Dynamic RAMStatic RAM Its technology is based on capacitorsIts technology is based on flip-flop Used where small memory capacity is requiredUsed where large memory capacity is required Slower access timeFaster access time Read Only Memory The memory is not volatile, found in chips and is primarily used for storing computer bios along with other vital information. Its major characteristics are as shown below Data is written into it when manufacturing Once it has been programmed, ROM can never be erased ROM contents are only fixed during fabrication by metal masks ROM is widely used in storing control programs, for permanent data storage, BIOS, embedded system code among others ROM comes in three types, EEPROM, EPROM and PROM Cache memory Cache memory is the fastest memory of the three main types acting as a buffer between Random Access Memory and the central processing unit as shown in figure 2. Cache memory stores data and instructions that are frequently used or requested by CPU so that they are readily available when requested (Stalling 2014). General impact of cache memory is a reduction in time used to access data from RAM. 3
Figure 2: cache memory Raspberry pi uses RAM type of memory and the SD card carries the operating system to be used. The first model had 256MB but with new models released as time goes, superior models are realized with latest model having a large capacity memory of 1GB. Task 3 Data bus, address and control buses The three buses forms system bus and interacts with the memory, CPU and peripherals as shown figure 3 Figure 3: interconnection of system bus Data bustransfers data in and out of CPU and is always called bidirectional bus. Data bus also performs read and write operations as the CPU ‘writes’ data into the data bus, and also ‘read’ 4
Paraphrase This Document
Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser
data from memory locations. Data bus has eight, sixteen or thirty two lines, and the number of these parallel lines is the same as the size of a word to be written or read. So 32 bit CPU will perform better than 8 and 16 bit. Address busis used in read and write operations to specify a location or physical address. Say the CPU has to write or read from or to the memory, the CPU will utilize the address bus to help it locate specific memory block it wants to access(Ishizu, Furutani & Sato, 2016). The width of the address bus is determined by the size of the memory. For instance, if the width of address bus is 8 bits, 2^6 memory locations will be address which is similar to 256MB memory space, and width of 16 bits address 4GB of memory space. Control busis used by central processing unit to communicate with the memory and peripherals with an aid of control signals. Raspberry pi uses ARM CPU, some models such as B+ uses ARM cortex and its bus system is as illustrated figure 4 (Pi, 2014). Figure 4: ARM cortex bus system TASK 4 Motorola 68000 CPU register sets This processor has a total of eighteen registers and are as follows One Status Register (SR) which consists of the Condition Code Register (CCR) and System Byte Eight data registers numbered from D0to D7 One Program Counter (PC). 5
Eight address registers numbered from A0to A7 Motorola 68000 Instructions The following are few examples of instruction and their interpretation CMP #X, D1- value of X is subtracted from contents of D1and the result discarded SUB #X, D3- value of X is subtracted from D3and the result stored in that register MOVE #X, D5- loads D5with value X CMP D2,D4- contents of D4subtracted from contents of D2and the result discarded. MOVE D7, L- copy contents of D7into memory location L. Raspberry pi’s ARM register set. ARM CPU has thirty 32 bit registers highlighted below One Program Counter r15 Thirteen general purpose data registers numbered from r0-r12 One Special Purpose Program Status Register, (xPSR) One Stack Pointer (SP) One Link Register (LR) r14 Raspberry pi’s ARM instructions Few examples of ARM CPU instructions and their interpretation (Brock & Bruce, 2013) ADD r0, r3, r6 - contents of operand3 (r3) is added to operand6 (r6) and the result is stored in r0 ADD r2, r4, #X - value of X is added to contents of operand4 (r4) and the result is stored in r2 MOVELE r0, #X - it moves number X to r0 only if less than or equal (LE) condition is satisfied. 6
REFERENCES Brock, J.D., and Bruce, R.F. 2013. Changing the world with a Raspberry Pi.Journal of Computing Sciences in Colleges,29(2), pp.151-153. Ishizu, T., Furutani, K. and Sato, K.,2016.Semiconductor device, central processing unit, and electronic device. U.S. Patent Application 15/011,809. Maksimović, M.,and Vujović, V. 2014. Raspberry Pi as Internet of things hardware: performances and constraints.design issues,3(8). Pi, R., 2015. Raspberry Pi Model B. Stalling.W, 2013,Computer Organization Architecture: Designing for performance,10thedition, New York, Pearson, Upton, E. and Halfacree, G., 2014.Raspberry Pi user guide. John Wiley & Sons. 7