国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

查看: 9048|回復: 13
打印 上一主題 下一主題

打算 學 ALTERA 的 MAX3000系列的 EPM3128

[復制鏈接]
跳轉到指定樓層
樓主
發表于 2009-6-18 10:32:12 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
關鍵詞: ALTERA
打算 學 ALTERA 的 MAX3000系列的 EPM3128    或EPM5000系列。

作為初學者,選擇簡單的CPLD做入門。封裝100LQFP的。

好希望聽聽 都是初學者的你的意見。 高手免提!
沙發
 樓主| 發表于 2009-6-18 10:45:31 | 只看該作者
大家為什么想使用FPGA/CPLD.? 是是什么行業?什么項目? 可以簡單說說嗎?

我主要是用CPLD 來擴展 I/O口,暫時就這個需要。因此沒什么要求,簡單學學就OK.
板凳
發表于 2009-6-18 11:59:48 | 只看該作者
建議LZ將學習經歷共享撒~
地板
發表于 2009-6-19 00:06:44 | 只看該作者
cpld,太簡單了。用原理圖輸入就可以了。
地下室
發表于 2009-6-19 00:18:09 | 只看該作者
二者沒有簡單和復雜之分

一般而言,CPLD是基于Macro Cell的,FPGA是基于LUT
CPLD的delay小并且可以準確預估,非常適合做組合邏輯功能
FPGA基于LUT門密度大,flip-flop更加豐富,適合做時序邏輯
6
發表于 2009-6-20 13:00:25 | 只看該作者
玩玩用3128也無妨。做批量就用epm240吧。價格更便宜,供貨也ok,資源更多。
我是想用“免提”和你通話的,可這個破論壇沒這功能啊。
7
發表于 2009-6-20 13:12:06 | 只看該作者
epm240 是新品,你說的那個快停產了。
8
發表于 2009-6-20 13:16:19 | 只看該作者
樓上咋不用“免提”,不厚道
9
 樓主| 發表于 2009-6-22 10:10:14 | 只看該作者
EPM240才10元,  240個宏單元.
參考資料:
Using MAX II & MAX 3000A
Devices as a Microcontroller
I/O Expander

比較好入門,程序,說明都很詳細。簡單學學~
10
 樓主| 發表于 2009-6-22 12:39:48 | 只看該作者
下面是代碼

module IO_Expander (CS, RD, WR, RST, CONF, LOAD, MODE,
MCU_IO, IO_PortA, IO_PortB, IO_PortC, IO_PortD);

input CS, RD, WR, RST, CONF, LOAD, MODE;

inout [7:0] MCU_IO, IO_PortA, IO_PortB, IO_PortC, IO_PortD;

wire writeA, writeB, writeC, writeD, read, en_IObuf, reset;
wire [1:0] Latched_Addr;
wire [3:0] inv_address;
wire [7:0] rbuf, wbuf_A, wbuf_B, wbuf_C, wbuf_D, inbuf, outbuf, Latched_en;

latch_io write_instA(.enable(writeA),.reset(reset),.data(MCU_IO),.q(wbuf_A));
latch_io write_instB(.enable(writeB),.reset(reset),.data(MCU_IO),.q(wbuf_B));
latch_io write_instC(.enable(writeC),.reset(reset),.data(MCU_IO),.q(wbuf_C));
latch_io write_instD(.enable(writeD),.reset(reset),.data(MCU_IO),.q(wbuf_D));
latch_io read_inst(.enable(read),.reset(reset),.data(inbuf),.q(rbuf));

reg_Addr register1_load(.enable((CONF & LOAD) | CS),.reset(reset),.data(MCU_IO[1:0]),.q(Latched_Addr));
reg_en register2_load(.enable(CONF | CS),.reset(reset),.data({inv_address[3:0],MCU_IO[5:2]}),.q(Latched_en));

tri_buffer wPortA(.in(wbuf_A),.oe(Latched_en[0]),.out(IO_PortA));
tri_buffer wPortB(.in(wbuf_B),.oe(Latched_en[1]),.out(IO_PortB));
tri_buffer wPortC(.in(wbuf_C),.oe(Latched_en[2]),.out(IO_PortC));
tri_buffer wPortD(.in(wbuf_D),.oe(Latched_en[3]),.out(IO_PortD));
tri_buffer rPort(.in(rbuf),.oe((en_IObuf & ~MODE) | (en_IObuf & CS)),.out(outbuf));

mux4_8bit mux0(.inA(IO_PortA),.inB(IO_PortB),.inC(IO_PortC),.inD(IO_PortD),.sel(Latched_Addr),.mux_out(inbuf));
mux4_1bit mux1(.inA(Latched_en[4]),.inB(Latched_en[5]),.inC(Latched_en[6]),.inD(Latched_en[7]),.sel(Latched_Addr),.mux_out(en_IObuf));

assign inv_address[3:0] = {~MCU_IO[5], ~MCU_IO[4], ~MCU_IO[3], ~MCU_IO[2]};
assign MCU_IO = outbuf;
assign reset = RST | CS;
assign read = RD | CS;
assign writeA = (Latched_Addr[0] | Latched_Addr[1] | WR) | CS;
assign writeB = (~Latched_Addr[0] | Latched_Addr[1] | WR) | CS;
assign writeC = (Latched_Addr[0] | ~Latched_Addr[1] | WR) | CS;
assign writeD = (~Latched_Addr[0] | ~Latched_Addr[1] | WR) | CS;

endmodule
11
 樓主| 發表于 2009-6-29 10:38:42 | 只看該作者
CPLD最大的問題是 燒寫壽命短,才100~200次! 學習不方面。使用FPGA就比較好些。

ALTERA的CYCLONE 應該合適(LQFP-100封裝的),但是價格比較貴啊!
12
發表于 2009-6-29 10:49:05 | 只看該作者
要做發燒音響,不得不用CPLD 控制時序。
13
發表于 2009-7-22 09:50:16 | 只看該作者
呵呵。。。學習。。
14
 樓主| 發表于 2009-8-5 18:06:10 | 只看該作者
現在覺得一塊開發板和一堆簡單易懂的例子很重要~
您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

關于我們  -  服務條款  -  使用指南  -  站點地圖  -  友情鏈接  -  聯系我們
電子工程網 © 版權所有   京ICP備16069177號 | 京公網安備11010502021702
快速回復 返回頂部 返回列表
主站蜘蛛池模板: 免费国产一区二区在免费观看 | 久草精品视频在线播放 | 激情亚洲的在线观看 | 四虎永久免费网站 | 91极品反差婊在线观看 | 欧美在线香蕉在线现视频 | 四虎影院永久 | 亚洲综合亚洲综合网成人 | 色婷婷在线观看视频 | 精品欧美一区二区在线看片 | 午夜小视频男女在线观看 | 特黄aaaaaaaaa真人毛片 | 韩日精品在线 | 欧美高清正版在线 | 精品视频免费 | 视频一区色眯眯视频在线 | 国产香蕉久久精品综合网 | 日韩欧美在 | 亚洲图片在线 | 一级毛片成人免费看免费不卡 | 亚洲精品欧美 | 免费观看a黄一级视频 | 深夜福利国产精品亚洲尤物 | 日本国产高清色www视频在线 | 国产成人精品一区二区视频 | 国产精品福利片 | 黄色成人影视 | 成年男女免费视频网站 | 亚洲 欧美 日韩在线 | 免费久久精品国产片香蕉 | 国产在线91精品天天更新 | 男人的天堂在线观看视频不卡 | 亚洲欧美在线精品 | 灰姑娘的炎热之夜 | 午夜小视频在线观看 | 男女啪啦猛视频免费 | 国产毛片久久国产 | 国产成人免费不卡在线观看 | 亚洲免费黄色网 | 亚洲小视频 | 国产成人综合亚洲 |