亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? oc54_alu.v

?? TI 的TMS320C54X的DSP的芯片軟核verilog源代碼
?? V
字號:
/////////////////////////////////////////////////////////////////////////                                                             ////////  OpenCores54 DSP, ALU                                       ////////                                                             ////////  Author: Richard Herveille                                  ////////          richard@asics.ws                                   ////////          www.asics.ws                                       ////////                                                             /////////////////////////////////////////////////////////////////////////////                                                             //////// Copyright (C) 2002 Richard Herveille                        ////////                    richard@asics.ws                         ////////                                                             //////// This source file may be used and distributed without        //////// restriction provided that this copyright statement is not   //////// removed from the file and that any derivative work contains //////// the original copyright notice and the associated disclaimer.////////                                                             ////////     THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY     //////// EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED   //////// TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS   //////// FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL THE AUTHOR      //////// OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,         //////// INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES    //////// (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE   //////// GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR        //////// BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF  //////// LIABILITY, WHETHER IN  CONTRACT, STRICT LIABILITY, OR TORT  //////// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT  //////// OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE         //////// POSSIBILITY OF SUCH DAMAGE.                                 ////////                                                             /////////////////////////////////////////////////////////////////////////						//// Xilinx Virtex-E WC: 617 CLB slices @ 58MHz//											 //  CVS Log														     //																     //  $Id: oc54_alu.v,v 1.1.1.1 2002/04/10 09:34:40 rherveille Exp $														     //																     //  $Date: 2002/04/10 09:34:40 $														 //  $Revision: 1.1.1.1 $													 //  $Author: rherveille $													     //  $Locker:  $													     //  $State: Exp $														 //																     // Change History:												     //               $Log: oc54_alu.v,v $//               Revision 1.1.1.1  2002/04/10 09:34:40  rherveille//               Initial relase OpenCores54x DSP (CPU)//											 																`include "timescale.v"`include "oc54_alu_defines.v"module oc54_alu (	clk, ena, inst,	seli, doublet,	a, b, s, t, cb,	bp_a, bp_b,	bp_ar, bp_br,	c16, sxm, ci, tci, 	co, tco,	result	);//// parameters////// inputs & outputs//input         clk;input         ena;input  [ 6:0] inst;              // instructioninput  [ 1:0] seli;              // input selectioninput         doublet;           // {T, T}input  [39:0] a, b, s;           // accumulators + shifter inputsinput  [15:0] t, cb;             // TREG + c-bus inputinput  [39:0] bp_ar, bp_br;      // bypass a register, bypass b registerinput         bp_a, bp_b;        // bypass selectinput         c16, sxm;          // dual-mode, sign-extend-mode, input         ci, tci;           // carry in, tc-inoutput        co, tco;           // carry out, overflow, zero, tc-outoutput [39:0] result;reg        co, tco;reg [39:0] result;//// variables//reg [39:0] iresult;reg        itco, ico;reg [39:0] x;wire [39:0] y;reg dc16, dci, dtci;reg [6:0] dinst;//// module body////// generate input selection, barrel-shifter has 1cycle delay//always@(posedge clk)	if (ena)		case(seli) // synopsis full_case parallel_case			2'b00 : 				if (doublet)					x <= #1 { {39-31{1'b0}}, t, t}; // is this correct ??				else					x <= #1 { {39-15{sxm ? t[15] : 1'b0}}, t};			2'b01 : x <= #1 bp_a ? bp_ar : a;			2'b10 : x <= #1 bp_b ? bp_br : b;			2'b11 : x <= #1 { {39-15{sxm ? cb[15] : 1'b0}}, cb}; 		endcaseassign y = s; // second input from barrel-shifter//// delay control signals//always@(posedge clk)	if (ena)		begin			dc16   <= #1 c16;			dci    <= #1 ci;			dtci   <= #1 tci;			dinst  <= #1 inst;		end//// generate ALU//always@(dinst or x or y or dc16 or dtci or dci)begin	ico     = dci;	itco    = dtci;	iresult = x;	case(dinst) // synopsis full_case parallel_case		//		// Arithmetic instructions		//		`ABS : // absolute value			begin				if (x[39])					iresult = (~x) + 1'b1;				else					iresult = x;					ico     = ~|(iresult);			end		`ADD : // ALSO ADDC, ADDS. For ADD, ADDS ci = 1'b0;			begin				iresult = x + y + dci;				ico     = iresult[32];			end		`MAX : // ALSO MIN. MAX: x==accA, y==accB, MIN: x==accB, y ==accA			begin					ico     = (x > y);					iresult = (x > y) ? x : y;			end		`NEG :			begin					iresult = (~x) + 1'b1;					ico     = ~|(iresult);			end		`SUB : // ALSO SUBB, SUBS. For SUB, SUBS ci = 1'b1;			begin				iresult = x - y - ~dci;				ico     = iresult[32];			end		`SUBC : // subtract conditional (for division)			begin				// FIXME: Is this correct ?? How does SUBC affect the carry bit ?				iresult = x - y;				ico     = iresult[32];				if ( iresult > 0 )//					iresult = (iresult << 1) + 1'b1;					iresult = ({x[38:0], 1'b0}) + 1'b1;				else//					iresult = x << 1;					iresult = {x[38:0], 1'b0};			end							//		// Dual Precision Arithmetic instructions		//		`DADD :			if (dc16)  // dual add          result_hi/lo = x_hi/lo + y_hi/lo				begin					iresult[39:16] = x[31:16] + y[31:16];					iresult[15: 0] = x[15: 0] + y[15: 0]; 				end			else      // 32bit add         result = x + y					{ico, iresult} = x + y;						`DSUB :			if (dc16) // dual subtract     result_hi/lo = x_hi/lo - y_hi/lo				begin					iresult[39:16] = x[31:16] - y[31:16];					iresult[15: 0] = x[15: 0] - y[15: 0]; 				end			else     // 32bit subtract    result = x - y				begin					iresult = x - y;					ico     = iresult[32];				end		`DRSUB : // ALSO DSUBT: make sure x = {T, T}			if (dc16)	// dual reverse sub. result_hi/lo = y_hi/lo - x_hi/lo				begin					iresult[39:16] = y[31:16] - x[31:16];					iresult[15: 0] = y[15: 0] - x[15: 0]; 				end			else     // 32bit reverse sub.result = y - x				begin					iresult = y - x;					ico     = iresult[32];				end		`DSUBADD : // DSADT: make  sure x = {T, T}			if (dc16)				begin						iresult[39:16] = y[31:16] - x[31:16];						iresult[15: 0] = y[15: 0] + x[15: 0]; 				end			else				begin					iresult = y - x;					ico     = iresult[32];				end			`DADDSUB : // DADST: make sure x = {T, T}			if (dc16)				begin						iresult[39:16] = y[31:16] + x[31:16];						iresult[15: 0] = y[15: 0] - x[15: 0]; 				end			else				begin					iresult = x + y;					ico     = iresult[32];				end						//		// logical instructions		//		`NOT : // CMPL					iresult = ~x;		`AND :					iresult = x & y;		`OR :					iresult = x | y;		`XOR :					iresult = x ^ y;		//		// shift instructions		//		`ROL :			begin					iresult[39:32] = 8'h0;					iresult[31: 0] = {x[30:0], dci};					ico            = x[31];			end		`ROLTC :			begin					iresult[39:32] = 8'h0;					iresult[31: 0] = {x[30:0], dtci};					ico            = x[31];			end		`ROR :			begin					iresult[39:32] = 8'h0;					iresult[31: 0] = {dci, x[31:1]};					ico            = x[0];			end		`SHFT_CMP :			if (x[31] & x[30])				begin//					iresult = x << 1;					iresult = {x[38:0], 1'b0};					itco    = 1'b0;				end			else				begin					iresult = x;					itco    = 1'b1;				end		//		// bit test and compare instructions		//		`BITF :					itco = ~|( x[15:0] & y[15:0] );		`BTST : // BIT, BITT y=Smem, x=imm or T					itco = y[ ~x[3:0] ]; // maybe do ~x at a higher level ??		`CMP_EQ	: // ALSO CMPM. for CMPM [39:16]==0					itco = ~|(x ^ y);		`CMP_LT :					itco = x < y;		`CMP_GT :					itco = x > y;		`CMP_NEQ :					itco = |(x ^ y);		//		// NOP		//		default :			begin				ico     = dci;				itco    = dtci;				iresult = x;			end	endcase				end//// generate registers//// resultalways@(posedge clk)	if (ena)		result <= #1 iresult;// tco, coalways@(posedge clk)	if (ena)		begin			tco <= #1 itco;			co  <= #1 ico;		endendmodule

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
一二三区精品福利视频| 午夜影院在线观看欧美| 亚洲男帅同性gay1069| 亚洲高清免费视频| 高清shemale亚洲人妖| 欧美精品第一页| 欧美激情中文不卡| 极品美女销魂一区二区三区免费| 91网站视频在线观看| 国产日韩av一区二区| 日本欧美在线观看| 欧美视频在线播放| 亚洲男人电影天堂| 91美女视频网站| 国产精品麻豆99久久久久久| 国产露脸91国语对白| 日韩精品一区二区三区中文精品| 亚洲一级电影视频| 欧美在线影院一区二区| 亚洲女同ⅹxx女同tv| 成人激情文学综合网| 国产精品无圣光一区二区| 日韩精品电影在线观看| 欧美日韩久久久一区| 亚洲激情男女视频| 日本韩国精品在线| 亚洲靠逼com| 在线观看欧美日本| 亚洲一区二区av电影| 欧美亚洲国产bt| 亚洲一区二区三区自拍| 欧美丝袜自拍制服另类| 亚洲一区影音先锋| 色哟哟一区二区在线观看| 亚洲欧洲日韩一区二区三区| 91猫先生在线| 亚洲一区二区三区四区五区黄| 一本久久a久久免费精品不卡| 亚洲少妇屁股交4| 欧美三区在线视频| 亚洲国产精品久久久久婷婷884 | 奇米色一区二区| 欧美一区二区三区系列电影| 日韩国产欧美在线观看| 精品成人a区在线观看| 国产精品99久久久| 亚洲色图制服诱惑| 欧美视频一区二| 美腿丝袜在线亚洲一区| 国产午夜精品一区二区三区视频| 成人高清在线视频| 午夜欧美一区二区三区在线播放| 欧美日韩的一区二区| 久久国产日韩欧美精品| 中文字幕精品一区二区三区精品| 97se狠狠狠综合亚洲狠狠| 亚洲综合自拍偷拍| 精品sm捆绑视频| 色婷婷综合在线| 久久激情五月激情| 最新国产成人在线观看| 91精品在线免费观看| 国产传媒欧美日韩成人| 亚洲午夜三级在线| 久久综合狠狠综合久久综合88| 成人av在线影院| 天堂va蜜桃一区二区三区| 国产欧美久久久精品影院| 欧美日韩一区二区在线观看视频| 国产一区二区三区四| 亚洲自拍偷拍麻豆| 精品久久久久久无| 欧美日韩在线播| 成人免费福利片| 人人超碰91尤物精品国产| 中文字幕亚洲成人| 久久婷婷国产综合国色天香 | 国产精品不卡在线观看| 欧美日韩一区二区欧美激情| 国产69精品久久777的优势| 视频一区在线视频| 自拍偷拍亚洲综合| 精品国产乱码久久久久久影片| 91官网在线观看| 国产91综合网| 国产在线一区二区综合免费视频| 亚洲精品一卡二卡| 亚洲国产精华液网站w| 日韩一区二区免费在线观看| 91黄色激情网站| 91丨九色丨黑人外教| 国产精品99久久久久久久女警| 蜜臀久久99精品久久久画质超高清| 亚洲女人****多毛耸耸8| 欧美国产禁国产网站cc| 精品盗摄一区二区三区| 欧美一级高清大全免费观看| 欧美日韩一级视频| 欧美性大战xxxxx久久久| 91老司机福利 在线| 99re热这里只有精品免费视频| 国产一区二区三区精品欧美日韩一区二区三区 | 美女mm1313爽爽久久久蜜臀| 国产精品久久久久天堂| 国产日韩欧美一区二区三区乱码 | 99精品国产热久久91蜜凸| 国产乱对白刺激视频不卡| 久久精品噜噜噜成人av农村| 亚洲成av人片一区二区梦乃| 亚洲人成伊人成综合网小说| 国产欧美精品区一区二区三区| 337p粉嫩大胆色噜噜噜噜亚洲| 69p69国产精品| 7777精品伊人久久久大香线蕉完整版 | 天天色天天爱天天射综合| 亚洲一区二区在线播放相泽| 亚洲激情在线播放| 一区二区三区精品视频| 亚洲精品免费播放| 亚洲精品欧美在线| 亚洲一区视频在线观看视频| 亚洲综合免费观看高清完整版在线| 亚洲美女一区二区三区| 艳妇臀荡乳欲伦亚洲一区| 亚洲人成7777| 伊人性伊人情综合网| 夜夜嗨av一区二区三区四季av | 国产精品全国免费观看高清| 国产视频一区不卡| 国产精品乱码一区二三区小蝌蚪| 欧美国产精品劲爆| 亚洲免费在线视频一区 二区| 亚洲激情男女视频| 日韩高清一区二区| 国内久久精品视频| 99在线视频精品| 欧美唯美清纯偷拍| 91麻豆精品国产91久久久资源速度| 欧美一级高清片在线观看| 久久久九九九九| 亚洲精品日韩专区silk| 亚洲成人免费在线观看| 狂野欧美性猛交blacked| 成人免费看片app下载| 色婷婷av一区二区| 日韩欧美国产系列| 国产精品成人网| 日韩和欧美一区二区| 国产主播一区二区三区| jizzjizzjizz欧美| 这里只有精品电影| 欧美激情一区三区| 亚洲123区在线观看| 国产精品一区二区你懂的| 色呦呦国产精品| 欧美大度的电影原声| 国产精品卡一卡二| 天堂久久一区二区三区| 韩国三级在线一区| 欧美在线一二三四区| 26uuu另类欧美亚洲曰本| 亚洲激情在线激情| 国产精品99久久久久久似苏梦涵| 色8久久人人97超碰香蕉987| 日韩一级免费一区| 亚洲欧美aⅴ...| 国产麻豆视频一区| 欧美体内she精高潮| 日本一区二区三区四区 | 色综合欧美在线视频区| 69久久99精品久久久久婷婷| 国产精品乱码人人做人人爱| 久久不见久久见中文字幕免费| 91美女视频网站| 久久久久久久久伊人| 天天色综合天天| av激情综合网| 国产女主播视频一区二区| 视频精品一区二区| 欧美艳星brazzers| 国产精品午夜在线| 久久黄色级2电影| 欧美三级电影网| 日韩一区有码在线| 国产精品一品视频| 欧美一区二区三区播放老司机| 亚洲人成在线观看一区二区| 福利一区二区在线| 日韩欧美区一区二| 日韩高清在线不卡| 777a∨成人精品桃花网| 亚洲精品国产精华液| 99久久精品情趣| 国产精品视频免费看| 国产一区二区伦理片| 久久先锋影音av| 国产乱一区二区| 国产亲近乱来精品视频| 毛片av一区二区| 日韩视频中午一区|