signextend.cpp
来自「基于4个mips核的noc设计」· C++ 代码 · 共 67 行
CPP
67 行
/* * TU Eindhoven * Eindhoven, The Netherlands * * Name : signextend.h * * Author : Sander Stuijk (sander@ics.ele.tue.nl) * * Date : July 23, 2002 * * Function : Sign extension * * History : * 23-07-02 : Initial version. * 13-12-02 : Synthesizable version A.S.Slusarczyk@tue.nl * */#include "signextend.h"void SIGNEXTEND::signextend_thread(){ sc_bv<SIGNEXTENDBIT> a; sc_bv<DWORD> b; sc_bv<DWORD-SIGNEXTENDBIT> zero(0); //-> while (true) { #ifdef VERBOSE clog << "SIGNEXTEND" << endl; #endif a = in.read(); b = (zero , a); for (unsigned int i = SIGNEXTENDBIT; i < DWORD; i++) b[i] = a[SIGNEXTENDBIT - 1]; out.write(b); //-> wait();//-> }}void SIGNEXTEND_BYTE::signextend_thread(){ sc_bv<DWORD> a; sc_bv<DWORD> b; //-> while (true) { #ifdef VERBOSE clog << "SIGNEXTEND BYTE" << endl; #endif a = in.read(); b.range(7,0) = a.range(DWORD-1,DWORD-8); for (int i = 8; i < DWORD; i++) b[i] = a[DWORD - 1]; out.write(b); //-> wait();//-> }}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?