trong d liu c ghi vo trc th c c ra trc. Hot ng c, ghi d liu c iu khin bi hai con tr ghi v c. Write Pointer : a ch con tr dng ghi d liu. Read Pointer : a ch con tr dng c d liu. Yu cu thit k: Thit k mt FIFO ng b gm 32 thanh ghi, mi thanh ghi 8 bits, vi 5 c trng thi: + C full + C empty + C threshold + C overflow + C underflow S khi ca thit k S tn hiu vo ra: S khi ca thit k Cc tn hiu vo: + clk: tn hiu xung clock ca h thng + rst_n: tn hiu reset ng b ca h thng + wr: tn hiu cho php ghi + rd: tn hiu cho php c + data_in: d liu vo 8 bits S khi ca thit k Cc tn hiu ra: + data_out: d liu c c ra 8 bits. + fifo_full: c bo fifo y. + fifo_empty: c bo fifo rng. + fifo_threshold: c bo fifo ln hn hoc bng 16 bytes. + fifo_overflow: c bo fifo y nhng vn ghi. + fifo_underflow: c bo fifo rng nhng vn c. c t thit k c t thit k Memory array: c t thit k Cc tn hiu vo ra ca Memory array: + fifo_we: in : tn hiu cho php d liu c ghi vo memory. + wptr: in : a ch ghi 6 bits, cung cp a ch d liu c ghi vo nh tng ng. + rptr : in : a ch c 6 bits, cung cp a ch c d liu c c ra t nh tng ng. + data_in: in : d liu cn ghi vo 8 bits + data_out: out: d liu c c ra 8 bits. c t thit k S thit k Memory array mc cng: c t thit k Write pointer: c t thit k Tn hiu vo ra ca Write pointer + wr: in : tn hiu cho php ghi ca h thng + fifo_full: in: c full. + fifo_we: out: tn hiu cho php la cho ghi vo memory array. + wptr : out : a ch ghi. Khi c tn hiu cho php ghi v fifo khng y th tn hiu fifo_we s tch cc v a ch ghi c a ra. c t thit k S thit k Write pointer mc cng: c t thit k Read pointer: c t thit k Tn hiu vo ra ca Read pointer + rd: in : tn hiu cho php ghi ca h thng + fifo_empty : in : c empty + fifo_rd: out : tn hiu cho php c t memory array. + rptr: out : a ch c. Khi c tn hiu cho php c v c empty khng tch cc th fifo_rd s tch cc v a ch c c a ra. c t thit k S mc cng ca Read pointer c t thit k Status signal: c t thit k Cc tn hiu vo ra ca Status signal: + wr: in : tn hiu cho php ghi. + rd: in : tn hiu cho php c. + fifo_we: in : tn hiu cho php ghi vo memory array, l tn hiu ra ca Write pointer. + fifo_rd: in : tn hiu cho php c t memory array, l u l ca Read pointer. + a ch ghi/c : wptr v rptr V 5 c bo nh yu cu thit k. c t thit k Thit k mc cng ca Status signal: 1/C full v empty: c t thit k Thit k mc cng ca Status signal: 2/ C Threshold (c ngng): c t thit k Thit k mc cng ca Status signal: 3/ C overflow: c t thit k Thit k mc cng ca Status signal: 4/ C underflow: