Chip123 科技應用創新平台

 找回密碼
 申請會員

QQ登錄

只需一步,快速開始

Login

用FB帳號登入

搜索
1 2 3 4
查看: 3405|回復: 4
打印 上一主題 下一主題

[問題求助] 記憶體問題

[複製鏈接]
跳轉到指定樓層
1#
發表於 2008-3-7 06:34:59 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
各位VHDL高手們,小弟寫了個6 X 64的記憶體,不過我試用實際的硬體電路來思考,並非使用軟體陣列的方式,如下:6 ^- e7 ^; m/ g* H* {6 u
我設計了一個decoder for column address selection,一個decoder for row address selection,然後使用generate產生64個latch陣列,但是現在我不知道該如何指定我的腳位,懇請各位給點意見,謝謝!* P/ R4 q; k& f
" m) |, A& T2 I- t1 @8 m
LIBRARY ieee;/ ~# k6 M/ @  N0 e' l
USE ieee.std_logic_1164.all;
/ V7 V7 K: U9 C. l7 h# W* L$ O& }USE ieee.std_logic_arith.all;" _% b( W  U& G1 J
( ?9 G% ?( H6 T4 Q8 s) Q
ENTITY memory_64 IS
6 A% G' o* I  I; Z8 K   PORT(
+ R, |" ]: i( t/ g: z. N      mem_in   : IN     std_logic_vector ( 5 DOWNTO 0 );
6 K8 I# J: {9 w# F' ]8 d9 {' R      mem_out  : OUT    std_logic_vector ( 5 DOWNTO 0 );) _- r- ]+ k7 {! D
      clr_l    : IN     std_logic;  r; {$ G1 b( u; M& U  @3 I: ~
      mem_addr : IN     std_logic_vector ( 5 DOWNTO 0 )0 m! r5 x$ b, R- g
   );
6 p4 Z1 N+ ^* L( ]! U% R- m  w! g4 Q2 b. H4 t" [
-- Declarations# L1 J/ g2 t& r  Z/ `7 R

; a; r! Z& s1 z3 M9 SEND memory_64 ;; N, f( I3 w& E; r8 w0 O
8 o' h" v6 `; J0 Z/ c0 {3 V
--8 k% ^* ^' A1 n+ |/ }  a
ARCHITECTURE arch OF memory_64 IS' S0 ^! O/ U9 W1 v( |- v
-- column decoder
4 p! U8 e. Z- |component mem_coldec
2 d' M  d4 x, B% V   PORT( - \; \' S6 X. F" \  \; O; V$ }
      col_addr : IN     std_logic_vector ( 2 DOWNTO 0 );2 S1 X0 B, B$ L) y4 n0 o( @
      col_sel  : OUT    std_logic_vector ( 7 DOWNTO 0 )
# @% U8 J* R  C& G, _  ]. [. p" V   );
5 b" X* d, b/ d2 yend component;
0 d7 G# [( l: L" w-- row decoder' Z; C. `* c2 P! A4 |  Q/ D( ?6 y
component mem_rowdec
2 y; n3 G# h4 G# l   PORT(
  F# |3 H6 Q0 h5 u      row_addr : IN     std_logic_vector ( 2 DOWNTO 0 );3 C  a1 ^7 \: ^& L
      row_sel  : OUT    std_logic_vector ( 7 DOWNTO 0 )
: v9 s# |. m5 s: p   );. ^" {5 y3 T0 k! g2 [
end component;   
- H0 e! y7 R) j# F9 k- B-- latch array   - F" C& A. Z9 C  j
component latch_cell
" ^7 w& B5 f, ]  C     PORT( 7 t: b  s9 ?6 S; d7 g+ c
        clr_l    : IN     std_logic;
* f1 q& v& U  `4 p        col_sel  : IN     std_logic;; R4 j# E8 z% z# }7 a4 T
        row_sel  : IN     std_logic;        
6 S, L9 d; H  g/ Q  P* W: h        data_in  : IN     std_logic_vector ( 5 DOWNTO 0 );% Z- ^- s% ]$ n. Q
        data_out : OUT    std_logic_vector ( 5 DOWNTO 0 )
# H& P- [7 S1 T+ z3 W1 ~4 z     );( [9 q- [: b) Q: [3 f
end component;   
9 ?  y) I% y7 n5 f' p- y! F$ B( \: ]  C  X: r: w, r2 M
signal smem_out : std_logic_vector ( 5 downto 0 );
% z! F) v1 C" y2 \1 G. `" K/ _0 ~signal scol_sel,srow_sel : std_logic_vector( 7 downto 0 );0 N, j" k0 `" c% U% _/ ^. k
BEGIN/ U! y0 M% D: P  o; q$ N! _* x* e
  u_0 : mem_coldec port map(mem_addr( 5 downto 3 ),scol_sel);( G' g9 L' ^( X% N# i& l! |$ R
  u_1 : mem_rowdec port map(mem_addr( 2 downto 0 ),srow_sel);  {% s; F  P( c
  g0 : for i in 0 to 7 generate -- column generate
- z% J* W. y# W8 O% [8 H5 n    g1 : for j in 0 to 7 generate -- row generate
+ y$ b4 f+ @/ Q         u_2 : latch_cell port map(clr_l,scol_sel(j),srow_sel(i),mem_in,smem_out);* \: r5 c# D; u5 X" @+ h" L2 J
    end generate;
! A( L# n- R9 d1 V& y  end generate;
9 y2 ?7 T) @. G3 ^# dEND ARCHITECTURE arch;
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享分享 頂 踩 分享分享
2#
發表於 2008-3-7 11:27:36 | 只看該作者
您好
5 |- A) z, P7 G6 y不用將address分成row跟column( Q  t7 ~7 ?$ k, s
這樣只是將問題複雜化而已; i3 g7 L; h3 b; n6 C8 w3 U/ n' w
你可以想成有64個6 bit的暫存器,來組成你要的ram* G. m2 P6 W* Y+ o9 A: L2 f
0 ~0 w0 |8 Y3 a2 y
用陣列寫法,code比較簡潔,建議使用1 V% A+ j6 f$ Q7 u! g
以下有範例,請參考  O% F0 z3 ?, o: O
http://www.doulos.com/knowhow/vh ... s/simple_ram_model/
3#
 樓主| 發表於 2008-3-7 12:30:16 | 只看該作者
不行耶,這樣就好了,我就是要講將實際的RAM電路寫成VHDL,不過還是感謝你的提示,難道真的沒有人這樣子做過嗎?
4#
發表於 2008-3-8 23:26:53 | 只看該作者
您好
/ J7 k4 X, B0 g; X不曉得你為甚麼要捨近求遠
* d/ n9 D# n0 ?4 v6 Z可以說說這麼做的原因嗎?
/ l4 T3 R( d; _3 `3 X8 ~還有這是要做甚麼樣子的應用
! n/ V" }3 P* m& B; p8 C謝謝
5#
 樓主| 發表於 2008-3-12 23:02:03 | 只看該作者

記憶體問題

我只是試著把FPGA規劃成一顆RAM
- Y" G1 \! g; H
2 m% L9 r2 `- L/ p0 g) {, U沒有什麼特別的啦^^...
您需要登錄後才可以回帖 登錄 | 申請會員

本版積分規則

首頁|手機版|Chip123 科技應用創新平台 |新契機國際商機整合股份有限公司

GMT+8, 2025-1-19 07:56 AM , Processed in 0.156000 second(s), 17 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回復 返回頂部 返回列表