Bước tới nội dung

Khác biệt giữa bản sửa đổi của “RISC-V”

n
Đối với các hệ thống RISC-V đơn giản, giảm chi phí, có một đề xuất sử dụng các bit của thanh ghi dấu phẩy động để thực hiện lệnh đơn song song, số học từ nhiều dữ liệu (SIMD). Điều này được sử dụng rộng rãi để tăng tốc đa phương tiện và [[xử lý tín hiệu số]] khác.<ref name="isa"/> {{Tính đến|2016}}, ISA này không được xác định, nhưng có thể giống với các hướng dẫn đa phương tiện của PA-RISC: Tăng tốc đa phương tiện. Bên cạnh toán học 64 bit gốc, CPU PA-RISC MAX2 có thể thực hiện số học trên bốn mật khẩu 16 bit cùng một lúc, với một số phương thức tràn. Nó cũng có thể di chuyển các từ khóa con đến các vị trí khác nhau. MAX2 của PA-RISC đã được đơn giản hóa một cách có chủ ý. Nó thiếu hỗ trợ cho các từ khóa 8 bit hoặc 32 bit. Kích thước từ phụ 16 bit được chọn để hỗ trợ hầu hết các tác vụ xử lý tín hiệu số. Những hướng dẫn này không tốn kém để thiết kế và xây dựng. Tuy nhiên, họ đã tăng hiệu suất của CPU đối với các tác vụ xử lý tín hiệu số từ 48 lần trở lên, cho phép [[Codec|các codec]] video thời gian thực thực tế vào năm 1995.<ref name="lee64bit">{{Chú thích tạp chí|last=Lee|first=Ruby|author-link=Ruby B. Lee|last2=Huck|first2=Jerry|date=ngày 25 tháng 2 năm 1996|title=64-bit and Multimedia Extensions in the PA-RISC 2.0 Architecture|url=http://ieeexplore.ieee.org/xpls/abs_all.jsp?arnumber=501762&tag=1|journal=Proceedings of Compcon 96|pages=152–160|accessdate =ngày 21 tháng 9 năm 2014}}</ref><ref name="leeaccel">{{Chú thích tạp chí|last=Lee|first=Ruby B.|author-link=Ruby B. Lee|date=April 1995|title=Accelerating Multimedia with Enhanced Microprocessors|url=http://www.princeton.edu/~rblee/HPpapers/accelMultimediawEnhancedMicroproc.pdf|journal=IEEE Micro|volume=15|issue=2|pages=22–32|citeseerx=10.1.1.74.1688|doi=10.1109/40.372347|accessdate =ngày 21 tháng 9 năm 2014}}</ref>
 
=== Bộ vectorVectơ ===
Bộ hướng dẫn xử lý véc tơvectơ được đề xuất có thể làm cho bộ SIMD đóng gói bị lỗi thời. Các nhà thiết kế hy vọng có đủ sự linh hoạt để CPU có thể thực hiện các hướng dẫn vectơ trong các thanh ghi của bộ xử lý tiêu chuẩn. Điều này sẽ cho phép thực hiện tối thiểu với hiệu suất tương tự như một ISA đa phương tiện, như trên. Tuy nhiên, một bộ đồng xử lý vectorvectơ thực sự có thể thực thi cùng một mã với hiệu suất cao hơn.<ref name="vect">{{Chú thích web|url=https://riscv.org/wp-content/uploads/2015/06/riscv-vector-workshop-june2015.pdf|title=RISC-V Vector Extension Proposal|author=Schmidt|first=Colin|author2=Ou|first2=Albert|website=RISC-V|publisher=Regents of the University of California|accessdate =ngày 14 tháng 3 năm 2016|author3=Lee|first3=Yunsup|author4=Asanović|first4=Krste|authorlink4=Krste Asanović}}</ref>
 
{{Tính đến|2015|06|29}}, đề xuất xử lý vectorvectơ là một thiết kế linh hoạt, bảo thủ của bộ xử lý vectorvectơ có độ chính xác hỗn hợp cho mục đích chung, phù hợp để thực hiện các hạt nhân tính toán. Mã sẽ chuyển dễ dàng đến các CPU có độ dài vectơ khác nhau, lý tưởng mà không cần biên dịch lại.<ref name="vect"/>
 
Ngược lại, các phần mở rộng SIMD vectorvectơ ngắn ít thuận tiện hơn. Chúng được sử dụng trong [[x86]], [[Cấu trúc ARM|ARM]] và [[PA-RISC]]. Trong đó, thay đổi độ rộng từ buộc thay đổi tập lệnh để mở rộng các thanh ghi vectơ (trong trường hợp x86, từ các thanh ghi MMX 64 bit sang Phầnphần mở rộng SIMD truyền phát 128 bit (SSE), sang Nângnâng cao 256 bit Phầnphần mở rộng vectơ (AVX) và AVX-512). Kết quả là một tập lệnh đang phát triển và cần chuyển mã làm việc sang các hướng dẫn mới.
 
Trong ISA vectơ RISC-V, thay vì sửa độ dài vectơ trong kiến trúc, một lệnh ({{code|setvl}}) có sẵn trong đó có kích thước được yêu cầu và đặt độ dài vectơ ở mức tối thiểu của giới hạn phần cứng và kích thước được yêu cầu. Vì vậy, đề xuất RISC-V giống như thiết kế vector dài của Cray. Nghĩa là, mỗi vectơ trong tối đa 32 vectơ có cùng độ dài.<ref name="vect"/>
Ứng dụng chỉ định tổng [[chiều rộng]] vectơ mà nó yêu cầu và bộ xử lý xác định độ dài vectơ mà nó có thể cung cấp với các tài nguyên trên chip có sẵn. Điều này có hình thức của một hướng dẫn ({{code|vsetcfg}}) với bốn toán hạng ngay lập tức, chỉ định số lượng thanh ghi vector của mỗi [[chiều rộng]] có sẵn cần thiết. Tổng số phải không quá giới hạn địa chỉ là 32, nhưng có thể ít hơn nếu ứng dụng không yêu cầu tất cả. Độ dài vectơ bị giới hạn bởi bộ lưu trữ trên chip có sẵn chia cho số byte lưu trữ cần thiết cho mỗi mục nhập. (Các giới hạn phần cứng được thêm vào cũng có thể tồn tại, do đó có thể cho phép triển khai theo kiểu SIMD.)<ref name="vect"/>
 
Ngoài các vòng lặp vectorvectơ, ứng dụng có thể yêu cầu các thanh ghi zero-vectorvectơ không, lưu hệ điều hành công việc bảo quản chúng trên các công tắc ngữ cảnh.<ref name="vect"/>
 
Độ dài vectơ không chỉ thay đổi về mặt kiến trúc mà còn được thiết kế để thay đổi theo thời gian chạy. Để đạt được tính linh hoạt này, tập lệnh có khả năng sử dụng các đường dẫn dữ liệu có [[chiều rộng]] thay đổi và các hoạt động kiểu biến bằng cách sử dụng quá tải đa hình.<ref name="vect"/> Kế hoạch là những thứ này có thể làm giảm kích thước và độ phức tạp của ISA và trình biên dịch.<ref name="vect" />
 
Các bộ xử lý vectorvectơ thử nghiệm gần đây với đường dẫn dữ liệu có [[chiều rộng]] thay đổi cũng cho thấy sự gia tăng lợi nhuận trong các hoạt động mỗi: giây (tốc độ), diện tích (chi phí thấp hơn) và watt (tuổitiết thọkiệm pinnăng dài hơnlượng).<ref>{{Chú thích web|url=http://www.eecs.berkeley.edu/~yunsup/papers/hwacha-mvp-prism2014.pdf|title=A Case for MVPs: Mixed-Precision Vector Processors|author=Ou|first=Albert|author2=Nguyen|first2=Quan|website=UC Berkeley EECS|publisher=Regents of the University of California|accessdate =ngày 14 tháng 3 năm 2016|author3=Lee|first3=Yunsup|author4=Asanović|first4=Krste|authorlink4=Krste Asanović}}</ref>
 
Không giống như một [[Bộ xử lý đồ họa|đơn vị xử lý đồ họa]] hiện đại thông thường, không có kế hoạch cung cấp phần cứng đặc biệt để hỗ trợ sự tiên đoán chi nhánh. Thay vào đó, mục đích dựa trên trình biên dịch chi phí thấp hơn sẽ được sử dụng.<ref name="vect"/><ref>{{Chú thích web|url=http://www.eecs.berkeley.edu/~yunsup/papers/predication-micro2014.pdf|title=Exploring the Design Space of SPMD Divergence Management on Data-Parallel Architectures|author=Lee|first=Yunsup|author2=Grover|first2=Vinod|website=Berkeley's EECS Site|publisher=Regents of the University of California|accessdate =ngày 14 tháng 3 năm 2016|author3=Krashinsky|first3=Ronny|author4=Stephenson|first4=Mark|author5=Keckler|first5=Stephen W.|author6=Asanović|first6=Krste|authorlink6=Krste Asanović}}</ref>