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 + -
显示快捷键?