Perface git
The most beautiful thing we can experience is the mysterious. It is the source of all true art and science.程序員
Albert Einsten, what I believe, 1930數據庫
我所經歷,最美好的事情是神祕的。它是全部真正藝術和科學的源泉。編程
艾伯特.愛因思坦,我相信什麼,1930.api
About This Book 關於本書。 promise
We believe that learning in computer science and engineering should reflect the current state of the field,架構
as well as introduce the principle that are shaping computer .app
咱們相信,在計算機科學和工程學習過程當中,應該反映該領域的現行狀態,還有介紹計算機組成的原理。 框架
We also feel that readers in every specialty of computing need to appreciate the organizational paradigms that determine the capabilities, performance, energy, and ultimately, the success of computer systems. less
@specialty /sp'eʃəlti/ 1.(N-count) Someone's specialty is a particular type of work that they do most, or a subject that they know a lot about.某人的specialty是他們作的最多的一種特殊工做類型,或者某一學科,他們懂得更多。
2.(N-count) A specialty of a particular place is a special food or product that is always very good there. 一個特殊地方的Specialty 是當地的一種特殊食物或產品。 @
@appreciate/əpr'i:ʃieit/ (appreciates, appreciating, appreciated) 1.[verb] If you appreciate something, for example a piece of music or good food, you like it because you recognize its good qualities. 若是你appreciate 某事件事情,例如一段音樂或者好的食物, 你喜歡它,由於你承認它的好品質。
In time you will appreciate the beauty and subtlety of this language. 隨着時間的推移,你會明白這種語言的美再麗和微妙。(參考google翻譯)
2. [verb] vn, v that; If you appreciate a situation or problem, you underatand it and know what it involves. 若是你欣賞一種形勢或者問題, 你瞭解它而且,知道它所涉及的內容。
He appreciates that co-operation with media is part of his professional duties. 他很讚許,與媒體合做是他專業職責中的一部分。
3. [verb] vn, v it if; If you appreciate something that someone has done for you or is going to do for you, you are grateful for it. 若是你欣賞一些事情, 某人已經爲你作了,或者打算爲你作,你是很感激他。
Peter stood by me when I most needed it, I will always appreciate that... 當我最須要幫助時,彼得站在個人立場,我將永遠感激那...
I would appreciate it if you wouldn't mention it. 我將不勝感激,若是你沒有是及我。
4. [verb] If something that you own appreciates over a period of time, its value increase. 若是你擁的東西,過了一段時間,它的價值增長。
They don't have any confidence that houses will appreciate in value. 他們沒有任何的信心,在價值方面,房子將會被欣賞。 @
@ultimately/ʌltimətli/ 1.[adv] adv with v, adv adj Ultimately means finally, after a long and often complicated series of events.
... a tough but ultimately worthwhile struggle. 一個艱難的,但最終值得鬥爭。eventually
2. [adv] ADV with cl, You use ultimately to indicate that what you are saying is the most important point in a discussion. 你可使用「ultimately」 以代表你所說得說是在討論的最重要的一點。Ultimately, Bismarck's revisionism scarcely affected or damaged British interests at all. 最終,俾斯麥的修正主義幾乎沒有影響或損害英國的根本利益。 @
Modern computer technology requires professionals of every computing specialty to understand both hardware and software.
現代計算機技術,須要每個計算機專業領域的計算機專家,理解硬件和軟件。
@1. specialty/sp'eʃəlti/ 1. (N-count) Someone 's specialty is a particular type of work that they do most, or a subject that they know a lot about.
某人的specialty 是一種特別類型的工做,他們作的最多,或者是一個學科,他們知道許多。
2. (N-count) A specialty of a particular place is a special food or product that is always very good there.
特別寺方的specialty 是一種特殊的食物或者產品, 一般它是很好的在那兒。 @
@2. professional /prəf'eʃənə/ 1. adj. Professional means relating to a person's work, especially work that require special training.
Professional 意味着與某人的工做相關,特別是那種工做須要特殊的培訓。
His professional career started at Liverpool University.他的職業生涯開始於 Liverpool大學。 @
The interaction between hardware and software at a variety of levels also offers a framework for understanding the fundamentals of computing.
在多種級別的硬件與軟件交互提供了一個理解計算機基礎的框架。
Whether your primary interest is hardware or software, computer science or electrical engineering, the central ideas in computer organization and design are the same.
不管你主要的興趣是硬件或者軟件,計算機科學或者電子工程, 在計算機組織中的中心思想是相同的。
Thus, our emphasis in this book is to show the relationship between hardware and software and to focus on the concepts that are the basis for current computers.
所以,在這本書中,咱們的強調點,是去展現硬件與軟件之間的關係, 而且聚焦於現代計算機的基本概念。
The recent switch from uniprocessor to multi-core microprocessors confirmed the soundness of this perspective, given since the first edition.
最近,從單處理器到多核微處理器的更新,證明了這一觀點的正確性,因爲初版的給出。
@3. confirm/kənfʒ:'m/ (confirms, confirming, confirmed)[verb] If something confirms what you believe, suspect, or fear, that it is definitely true.@
While programmers could ignore the advice and rely on computer architects, compiler writers, and silicon engineers to make their programs run faster or be more energry-efficient without change, that era is over.
然而, 程序員可能忽略了忠告, 或者依賴於計算機架構師、編譯做者,和硅工程師去使他們的程序運行更快或者在沒有改變的狀況下能源利用更高,那個時代已經結束。
@ 4. rely/ri'lai/ v. If you rely on someone or something, you need them and depend on them in order to live or work property.@
@5.era/'iərə/n. 年代;@
@6. silion/s'ilikən/ n. silicon is an element that is found in sand and in minerals such as quartz and granite. Silicon is used to make parts of computers and other electronic equipment.@
For programs run faster, they must become parallel.
若是程序更快地運行,他們必須變成並行的。
@7. parallel/p'ærəlel/ n. If something has a parallel, it is similar to something else, but exists or happens in a different place or at a different time.
If it has no parallel or is without parallel, it is not similar to anything else. @
While the goal of many researchers is to make it possible for programmers to be unaware to the underlying parallel nature of the hardware they are programming, it will take many years to realize this vision.
@8. vision /vi'ʒən/ Your vision of a future situation or society is what you imagine or hope it would be like, if things were very different from the way they are now. @
Our view is that for for at least the next decade, most programmers are going to have to understand the hardware/software interface if they want programs to run efficiently on parallel computers.
咱們的觀點是那,至少下一個十年,大多數程序員正在準備必須理解硬件或軟件接口,若是他們想要程序在並行計算機上高效地運行。
The audience for this book includes those with little experience in assembly language or logic design who need to understand basic computer organization as well as readers with backgrounds in assembly language and/or logic design who want to learn how to design a computer or understand how a system work and why it performs as it does.
適合本書的觀衆,包括那些毫無彙編語言經驗或者邏輯設計, 須要去理解基本的計算機組織;還有在彙編語言和邏輯設計有必定基礎的讀者,想要學習怎樣設計計算機,或者理解一個系統怎樣工做,或者它爲何按照指令執行。
@9. audience // the audience at a play, concert, film, or public meeting is the group of people watching or listening to it @
About the other book
Some readers may be familiar with Computer Architecture: A Quantitative Approach, popularly know as Hennessy and Patterson (This book in turn is often called Patterson and Hennessy.)
有些讀者可能熟悉計算機體系結構:一種定量方法, 廣泛知道的Hennessy和Patterson(這本書又被稱做Patterson and Hennessy)
@10. quantitative /kw'ɔntitətiv/ adj. quantitative means relating to different sizes or amount of thing.@
Our motivation in writing the the earlier book was to describe the principles of computer architecture using solid engineering fundamentals and quantitative cost/performance trade offs.
咱們在寫前面的書的動機是描述計算機體系結構採用紮實的工程基礎和量化的成本/性能折衷的原則。
@11.trade-off N. count A trade-off is a situation where you make a compromise between two things, or where you exchange all or part of one thing for another.@
We used an approach that combined example and measurements, based on commercial systems, to create realistic design experiences.
咱們使用了一種方法, 結合實例和測量方式,基於商業系統,創造一種現實版的設計經驗。
Our goal was to demonstrate that computer architecture could be learned using quantitaive methodologies instead of a descriptive approach.
咱們的目標,是使用量化的方法去了解計算機體系結構,而不是一種描述性的方法。
It was intended for the serious computing professional who wanted a detailed understanding of computer.
它是專門打算爲了計算機專家準備的,他想要對計算機有一個詳細的理解。
A majority of the readers for this book do not plan to become computer architects.
這本書的主要讀者,並不許備成爲計算機架構師。
The perfomance and energy efficiency of future software systems will be dramatically affected,however, by how well software designers understand the basic hardware techniques at work in a system.
未來軟件系統的性能和能量利用率將會受到巨大的影響,不管如何, 經過,良好的軟件設計師怎樣理解基本的硬件技術在一個系統中。
@12. dramatic /drəm'ætik/ A dramatic change or event happens suddenly and is very noticeale and surprising.@
Thus, compiler writers, operating system designers, database programmers, and most other software engineers need a firm grounding in the principles presented in this book.
所以,編譯器的編寫者,操做系統的設計者,數據庫編程人員,還有大多數的軟件工程師,須要一個牢固的基礎,對於出如今本書中的原理。
Similarly, hardware designers must understand clearly the effects of their work on software application.
類似的,硬件設計人員必須清楚地理解,在軟件應用程序方面,他們工做的影響力。
Thus, we know that this book had to be much more than a subset of the material in Computer Architecture, and the material was extensively revised to match the computer audience.
@13. subset/sʌ'bset/ A subset of a group of things is a smaller number of things that belong together within that group.@
所以,咱們知道, 這本書必須有比計算機體系架構部分材料還多,這些材料被擴展到計算機的關注者。
We were so happy with the result that the subsequent editions of Computer Architecture were revised to remove most of the introductory material; hence , there is much less overlap today than with the first editions of books.
在這樣的結果下,咱們很高興, 計算機體系架構各版的依次修訂,除去了大多數的介紹性材料,所以,今天有不多的重複性內容,比起本書的初版。
@14. revise /riv'aiz/ (revises, revising, revised)1. If you revise the way you think about something,you adjust your thoughts, usually in order to make than better or more suited to how things are. 若是,你revise 你思想問題的方式, 你適應你的思想,一般,爲了使事情更好或者事情怎樣作更合適。
He soon came to revise his opinion of the profession.他很快就修改了他的專業性的意見。
2. (verb) v.n If you revise a price, amount, or estimate, you change it to make it more fair, realistic, or accurate.
若是你price 價格、數量、或者估值, 你改變它,使它更公正、現實或者精確。
They realised that some of their prices were higher than their competitors' and revised price according.
他們意識到那, 他們價格中的一些比竟爭對手的更高,據此,修定價格。
3.[verb] v n for n, v n;
When you revise an article, a book, a law, or a piece of music, you change it in order to improve it, make it more modern, or make it more suitable for a particular purpose.
當你revise 一片文章、 本本書,一段音樂, 你更改它,使它更現代, 使它更合適對於一個特別的目的。
Three editors handled the work of revising the articles for publication...
三位編緝爲了發表,處理正在修訂的文章。
The staffs should work together to revise the school curriculum.@
工做人員應該一塊兒修訂學校的課程表。
@15. Overlap (overlaps, overlapping, overlapped)
The verb is pronounced /əuvəl'æp/, The noun is pronounced /'əuvəlæp/. 動詞發音爲/əuvəl'æp/,名詞發音爲/'əuvəlæp/.
1. [v-recip] v n , v pl-n, pln v, pln v n,
If something overlaps another, or if you overlap them, a part of thing occupies the same area as a part of other thing, you can also say that two things overlap.
若是某件事情overlaps另外一件事情,或者若是你overlop 它們, 某件事情的一部分佔領了另外一件事情的同一部位,你也可以說兩件事情overlap.
When the bag is folded flat, the bag botton overlaps one side of the bag.
當這個包被水平fold時,包的底部摺疊到包的另外一邊。
Overlap the slices carefully so here are no gaps.
仔細重疊切片,以致於沒有縫隙。
2. [v-recip] v n, v with n, pl-n v. If one idea or activity overlaps another, or overlaps with another, they involve some of the same subjects, people, or periods of time.
若是一個想法或科目overlap另外一個,或者用另外一個overlap,它們涉及相同的科目,人員,或者時間段。 @
About the Asian Edition
相關亞洲版;
With the consent of the authors, we have developed this Asian Edition of Computer Organization and Design: The Hardware/Software Interface, to better reflect local teaching practice of computer course in Asian classrooms and the development of computer technology in this region.
@region/r'i: dʒən/ (N-count) A region is a large area of land that is different from other areas of land, for example because it is one of the different parts of a country with its own customs and characteristics, or because it has a particular geographical feature.
@一個區域, 是一塊大面積的陸地, 不一樣於陸地的其它區域;例如, 由於它是一個國家不一樣地方之一,有它自已的風俗習慣,或者由於它有一個特別的地理特色。 @
@consent/kəns'ent/(consents, consenting consented)1. [N-uncount] usu with poss If you give your consent to something, you give someone permission to do it.
若是你給你的consent對於某事,你給某人承諾去作某事。@
the major adjustment of content include:
內容的主要調整包括:
@17. adjustment /ədʒ'ʌstmənt/(adjustments) 1. [N-Conut] oft N to/for/in n An adjustment is a small change that is made to something such as a machine or a way of doing something. adjustment 是一次小小的改動,針對某件事情,例如一臺機器,或者作某事的方式。
Investment is up by 5.7% after adjustment for inflation. 投資增加了5.7%, 調整後的通貨膨脹。2. [n-count] oft N to n An adjustment is an change in a person's behaviour or thinking. adjustment是一我的的動做和思惟的改變。
He will have to make major adjustments to his thinking if he is to survive in office. 他將不得不對於他的思想做出重大的調整,若是他想在辦公室生存下去。 @
1. An introduce to the "Th-2 High Performance computing System"(as a demonstration of cluster computing system) to replace Appendix B on digital logic, and a new section on "Networks-on-Chip" as Appendix F.
@cluster /kl'ʌstə/ (clusters, clustering, clustered) 1. (N-count) oft N of n
A cluster of people or things is a small group of them close together. 人或事物的cluster是一小羣人牢牢靠在一塊兒。
There is no town here, just a cluster of shops, cabins and motels at the side of highway.在鐵路旁邊,沒有城鎮,只有幾個商店,小木屋和汽車旅館。@
針對「th-2高性能計算機系統(展現了一種雲計算機系統)」的介結,取代了附錄B 數字邏輯,和在附錄F中的新章節「Networks-on-chip」.
Both reflect the latest progress in computer technology and can serve as good reference for readers.
在計算機技術裏,反映最新的進展,而且,對於讀者能夠做爲很好的參考。
2. Abridgment of some sections of Chapter 2 to better suit the current curriculumns applied in Asian classroom.
@abridgment /əbridʒmənt/n. 節本;縮減;節略;
@19. curriculum /kər'kjuləm/ (curriculums, or curricular/kər'kjulə/)1. [N-count]
A curriculum is all the different courses of study that are taught in a school, collage, or university.
A curriculum 是學習的不一樣課程,在中學、學院、大學被教的。
Russian is the one compulsory foreign language on the school curriculum. 在學校課程中,俄語是一門複雜的語言。
2. [N-count] usu n N,
A particular curriculum is one particular course of study that is taught in a scchool, college, or university.@
第二章中的幾節刪節,更適應於在亞洲課堂的現行課程。
With these adjustments listed above, the Asian Edition is enhanced with local features while keeping the main structure and knowledge framework of the original version.
以上所列的這些更改, 亞洲版能夠加強伴隨着當地的特色, 當保持主體架構和原始版本的知識架框。
Special thanks go to Prof. Zhiying Wang, Prof Chung-ping Chung, Associate Prof. Li Shen and Dr. Sheng Ma, for their contributions to the development of this Asian Edition.
特別感謝王志銀教授, 鍾仲平教授,副教授李申,馬盛博士,他們爲了這個亞洲版的出版做出貢獻。
Changes for the Fifth Edition
第五版的改變:
We had six major goals for the fifth edtion of Computer Organization and Design:
咱們有六個主要的目標:對於計算機的組成與設計第五版;
demonstrate the importance of understanding hardware with a running example;
使用了一個運行實例,展現了理解硬件的重要性。
highlight major themes across the topics using margin icons that are introduced early;
@20.margin/m'a:rdʒin/ (margins) 1. [N-count] with supp A margin is the difference between the amounts, especially the difference in the number of votes or points between the winner and loser in an election or other contest.
A margin 是數量之間的差值, 特別是選票或者點擊數量上的差值,在一次選舉或者其它競爭中的勝利者和失敗者。
3. [N-var] with supp If there is a margin for something in a situation, there is some freedom to choose what to do or decide how to do it.
The money is collected in a straigtforeward way with little margin for error...
這些錢被用簡單的方法蒐集起來,幾乎沒有一點錯誤的餘地。
2.[n-count] The margin of a written or printed page is the empty space at the side of the page.
書寫或印刷頁面的margin 是這一頁的空白地方;
She added her comments in the margin. 在頁邊空白地方,加上了她的註釋。
4. [n-count] with supp The margin of place or area is the extreme edge of it . 某地或區域的margin是它的極端邊沿。
5. 【n-pl】 with supp To be on the margins of a society, group, or activity means to be among the least important parts of it.
Students have played an important role in the past, but for the mom ent, they are on the margins.
The low coastal plain along the western margin.沿着西部邊緣較低的西部平原。@
updated examples to reflect changeover from PC era to PostPc era;
更新實例,反映改變實值從PC 時代到後pc時代;
spread the material on I/O throughout the book rather than isolating it into a single chapter; update the technical content to reflect changes in the industry since the publication of the fourth edition in 2009; and put appendices and optional sections online instead of including a CD to lower costs and to make this edition viable as electronic book.
Before discussing the goals in detail, let's look at the table on page vii.
It shows the hardware and software paths through the material.
Chapters 1,4,5 and 6 are found on both paths, no matter what the experience or the focus.
Chapter 1 discusses the importance of energy and how it motivates the switch from single core to multicore microprocessors and introduces the eight great ideas in architecture.
Chapter 2 likely to review material for hardware-oriented programming, but it is essential reading for the software-oriented, especially for those readers in learning more about compilers and object-oriented programming languages.
Chapter 3 is for readers interested in constructing a datapath or in learning more about floating-point arithmetic.
Some will skip parts of Chapter 3, either because they do not need them or because they offer a review.
However, we introduce the running example of matrix multiply in this chapter, showing how subword parallels offers a fourfold improvement, so do not skip section 3.6 to 3.8.
Chapter 4 explains pipelined processors.
Section 4.1, 4.5, and 4.10 give overviews and 4.12 gives the next performance boost for matrix multiply for those with a software focus.
Those with a hardare focus, however, will find that this chapter presents core material; they may also, depending on their background, want to read Appendix C on logic design first.
The last chapter on multicores, multiprocessors, and clusters, is mostly new content and should be read by everyone.
It was significantly reorganized in this edition to make the flow of ideas more natural and to include much more depth on GPUs, warehouse scale computers, and the hardware-software interface of network interface cards that are key to clusters.
The first of the six goals for this fifth edition was to demonstrate the importance of understanding modern hardware to get good performance and energy efficiency with a concrete example.
As mentioned above, we start with subword parallelism in Chapter 3 to improve matrix multiply by a factor of 4.
We double performance in chapter 4 by unrolling the loop to demonstrate the value of instruction level parallelism.
Chapter 5 doubles performance again by optimizing for caches using blocking.
Finally, Chapter 6 demonstrates a speedup of 14 from 16 processor by using thread-level parallelism.
All four optimizations in total add just 24 lines of C code to our initial matrix multiply example.
The second goal was to help readers separate the forest from the trees by identifying eight great ideas of computer architecture ealy and then pointing out all the places they occur throughout the rest of the book.
We use (hopefully) easy to remember margin iconsand highlight the corresponding word in the text to remind readers of these eight themes.
There are nearly 100 citations in the book.
No chapter has less than seven examples of great ideas, and no idea is cited less than five times.
Performance via parallelism, pipelining, and prediction are the three most popular great ideas, followed closely by Moore's Law.
The processor chapter (4) is the one with the most examples, which is not a surprise since it probably received the most attention from computer architects.
The one great idea found in every chapter is performance via parallelism, which is a pleasant observation gievn the recent emphasis in parallelism, which is a pleasant obsercvation given the recent emphasis in parallesim in the field and in edition of this book.
The third goal was to recognize the generation change in computing from the PC era to PostPc era by this edition with our example and material.
Thus, chapter 1 dives into the guts of a tablet computer rather than a PC, and Chapter 6 describles the computing infrastructure of the cloud.
We also feature the ARM, which is the instruction set of chioce in the personal mobile devices of the PostPC era, as well as the X86 instruction set that dominated the PC Era and (so far) dominates cloud computing.
The fourth goal was to spread the I/O material throughout the book rather than have it in its own chapter, much as we spread parallelism throughout all the chapters in the fourth edition.
Hence, I/O material in this edition can be found in sections 1.4, 4.9, 5.2, 5.5, 5.11 and 6.9.
The thought is that reader (and instructors) are more likely to cover I/O if it's not segreagted to its own chapter.
This is a fast-moving field, and, as is always the case for our new editions, an important goal is to update the technical content.
The running example is the ARM Cortex A8 and Intel Core i7, reflecting our PostPC Era.
Other highlights include an overview the new 64-bit instruction set of ARMv8, tutorial on GPUs that explains their unique terminology, more depth on the warehopuse scale computers that make up the cloud, and a deep dive into 10 Gigabyte Ethernet cards.
To keep the main book short and compatible with electronic books, we placed the optional material as online appendices instead of on a companion CD as in prior editions.
Finally, we updated all the exercises in the book.
最後,咱們升級了全部的練習題。
While some elements changed, we have preserved useful book elements from prior editions.
To make the book work better as a reference, we still place definitions of new terms in the margins at their first occurrence.
The book element called "understanding Program Performance" sections helps readers understand the performance of their programs and how to improve it, just as the "Hardware/software Interface" book element helped readers understand the tradeoffs at this interface.