architecture(i)内容摘要:

0 P259 Figure – 21 – Processor Y86 Program Structure  Program starts at address 0  Must set up stack  Make sure don’t overwrite code!  Must initialize data  Can use symbolic names irmovl Stack,%esp Set up stack rrmovl %esp,%ebp Set up frame irmovl List,%edx pushl %edx Push argument call len2 Call Function halt Halt .align 4 List: List of elements .long 5043 .long 6125 .long 7395 .long 0 Function len2: . . . Allocate space for stack .pos 0x100 Stack: – 22 – Processor Assembling Y86 Program  Generates “object code” file  Actually looks like disassembler output unix yas 0x000: 308400010000 | irmovl Stack,%esp Set up stack 0x006: 2045 | rrmovl %esp,%ebp Set up frame 0x008: 308218000000 | irmovl List,%edx 0x00e: a028 | pushl %edx Push argument 0x010: 8028000000 | call len2 Call Function 0x015: 10 | halt Halt 0x018: | .align 4 0x018: | List: List of elements 0x018: b3130000 | .long 5043 0x01c: ed170000 | .long 6125 0x020: e31c0000 | .long 7395 0x024: 00000000 | .long 0 – 23 – Processor Simulating Y86 Program  Instruction set simulator  Computes effect of each instruction on processor state  Prints changes in state from original unix yis Stopped in 41 steps at PC = 0x16. Exception 39。 HLT39。 , CC Z=1 S=0 O=0 Changes to registers: %eax: 0x00000000 0x00000003 %ecx: 0x00000000 0x00000003 %edx: 0x00000000 0x00000028 %esp: 0x00000000 0x000000fc %ebp: 0x00000000 0x00000100 %esi: 0x00000000 0x00000004 Changes to memory: 0x00f4: 0x00000000 0x00000100 0x00f8: 0x00000000 0x00000015 0x00fc: 0x00000000 0x00000018 – 24 – Processor Summary Y86 Instruction Set Architecture  Similar state and instructions as IA32  Simpler encodings  Somewhere between CISC and RISC How Important is ISA Design?  Less now than before  With enough hardware, can make almost anything go fast  Intel is moving away from IA32  Does not allow enough parallel execution  Introduced IA64 187。 64bit word sizes (overe address space limitations) 187。 Radically different style of instruction set with explicit parallelism 187。 Requires sophisticated pilers Radically: 根本上 – 25 – Processor Logic Design Digital circuit  What is digital circuit?  Know what a CPU will base on? Hardware Control Language (HCL)  A simple and functional language to describe our CPU implementation  Syntax like C – 26 – Processor Category of Circuit Analog Circuit  Use all the range of Signal  Most part is amplifier  Hard to model and automatic design  Use transistor and capacitance as basis  We will not discuss it here Digital Circuit  Has only two values, 0 and 1  Easy to model and design  Use true table and other tools to analyze  Use gate as the basis  The voltage of 1 is differ in different kind circuit.  . TTL circuit using 5 voltage as 1 Amplifier: 放大器 Transistor: 晶体管 Capacitance: 电容 – 27 – Processor Digital Signals  Use voltage thresholds to extract discrete values from continuous signal  Simplest version: 1bit signal  Either high range (1) or low range (0)  With guard range between them  Not strongly affected by noise or low quality circuit elements  Can make circuits simple, small, and fast Voltage Time 0 1 0 – 28 – Processo。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。