HOME
  Security
   Software
    Hardware
  
FPGA
  CPU
   Android
    Raspberry Pi
  
nLite
  Xcode
   etc.
    ALL
  
LINK
BACK
 

2002/10/10

スパルタン2で スパルタン2で"MIDWAY 8080(TAITO インベーダ基板)"を動かす!

(ハードウェアで本物を作ります)

Tags: [FPGA], [電子工作]





INVADER

GALAXIAN

PACMAN

D*NKEY-K*NG


使用素材(Z80互換のCPUコアです)
OPENCORES.ORGのページ (Project: T80 cpu)
VHDL Soft Coresのページ (原作者:Daniel Wallner)

「VHDLベースのZ80IP 'T80'をVelologで使用する方法」
When using 'ngc' file, Compile time very very fast.
この'ngc'利用の方法でコンパイル時間を格段に短縮する事ができました!!

Another Link
- FPGA ARCADE MikeJ's Original Pacman hardware in an FPGA
- SpartanII+ROM=PACMANSatoh's PACMAN
- SpartanII+Z80+ROM+RAM=GALAXIANFREE WING's GALAXIAN(Using Real Z80, and Z80-IP core)

office-Dsan Mr.Degawa's FPGA-DONKEY KONG with SOUND !!! and FPGA-MOONCRESTA in ALTERA Cyclone


SCORE<1> HI-SCORE SCORE<2>
0000 0000 0000
GAME START
CREDIT 00

MOVIE(Windows ASF)
SPACE INVADER:SCREEN CAPTURE , DEBUG ADDRESS&DATA DISP
SPACE INVADER COLOR:SCREEN CAPTURE
SPACE WAR LEIJAC:SCREEN CAPTURE

FPGA Xilinx XC2S150-5PQ208 :SPARTAN-2(8080core+MIDWAY8080)
RAM any 62256 :Work & VRAM AREA
ROM any 27C256 :Program AREA

No Sound(No Analog)


↓その後、ROMとRAMのバスを分離したもので完璧に動きました。(本来の姿)

インベーダー基板の回路化がOPENCORES.ORGにあります。
と言うわけで、最初の画面表示するだけ(暴走して動かない)までこぎつけました。
ModelSIMで波形観測して「これは変だなあ?」と言う所は変更しました。

また、失敗したのがROMとRAMのバスをうっかり共通に配線しちゃった事(てへへ)、
で、しょうがないのでVRAMアクセス調停をROMともバッティングしないように変更しました。
(この影響でROMアクセスが遅くなり割り込み間隔を処理オーバーしてしまう為に暴走します。)
(FPGAって便利ですね。ハンダごてなくても回路変更できるから。)

例によってパチンコ液晶でデバグ中
画面表示でたよー!

この画面で止まったままになります。(でもクレジット入れると反応します。)


通称レジャック


うっかり共通に配線しちゃったROM/RAM基板、ちなみにスパ2はトラ技の学習基板(XC2S150)です。
(基板が見えないのはゴミでショートしないようにガードのつもり。)


参考までにトップレベル階層
回路図入力でトップ階層を記述しました。(変更が多いのでHDL言語だとめんどくさい)

上の回路図を更に包み込んで本当のトップレベル↓
DLLでクロック分周や7セグ表示を入れてあります。
その他232Cでアドレスとデータを逐次出力でデバグの手助け機能もつけました。

ModelSIMで波形観測


XC2S150で入りきりました。>>その後XC2S100でも入りきりました(Web-ISE4.2WP30で)


Device utilization summary:
   Number of External GCLKIOBs         2 out of 4      50%
   Number of External IOBs            72 out of 140    51%
      Number of LOCed External IOBs   72 out of 72    100%
   Number of SLICEs                 1233 out of 1728   71%
   Number of DLLs                      1 out of 4      25%
   Number of GCLKs                     2 out of 4      50%
Overall effort level (-ol):   2 (set by user)
Placer effort level (-pl):    2 (set by user)
Placer cost table entry (-t): 1
Router effort level (-rl):    2 (set by user)
Extra effort level (-xe):     0 (set by user)

本物基板
サウンド&その他

CPU&RAM&その他

ROM&その他





とりあえずT80の8080コアのコンパイル結果(S200-PQ208)



Release 4.2WP3.x - Par E.38
Copyright (c) 1995-2001 Xilinx, Inc.  All rights reserved.
FRI 20 SEP 20:47:42 2002
par -f _par.rsp
Constraints file: t_t8080se.pcf
Loading design for application par from file par_temp.ncd.
   "t_t8080se" is an NCD, version 2.37, device xc2s200, package pq208, speed -6
Loading device for application par from file 'v200.nph' in environment
K:/Xilinx.
Device speed data version:  PRELIMINARY 1.23 2001-12-19.
Device utilization summary:
   Number of External GCLKIOBs         1 out of 4      25%
   Number of External IOBs            42 out of 140    30%
      Number of LOCed External IOBs    0 out of 42      0%
   Number of SLICEs                 1388 out of 2352   59%
   Number of GCLKs                     1 out of 4      25%
Overall effort level (-ol):   2 (set by user)
Placer effort level (-pl):    2 (set by user)
Placer cost table entry (-t): 1
Router effort level (-rl):    2 (set by user)
Extra effort level (-xe):     0 (set by user)



Tags: [FPGA], [電子工作]

●関連するコンテンツ(この記事を読んだ人は、次の記事も読んでいます)

スパルタン2で
スパルタン2で"パックマン"を動かす!

  FPGAでパックマンが動きます

スパルタン2で
スパルタン2で"ド*キーコ*グ"を動かす!

  これもFPGAで動いちゃいます

ヒューマンデータ製 ALTERA Cycloneボード
ヒューマンデータ製 ALTERA Cycloneボード

  AlteraのCycloneは高性能

スパルタン2ってな~に?
スパルタン2ってな~に?

  簡単な紹介

スパルタン3でアーケードゲームを動かす!
スパルタン3でアーケードゲームを動かす!

  XAPP694の使用例、INVADER/GALAXIAN/PACMAN/D*NKEY-K*NG/TIME PILOT




[HOME] | [BACK]
リンクフリー(連絡不要、ただしトップページ以外は Web構成の変更で移動する場合があります)
Copyright (c) 2002 FREE WING,Y.Sakamoto
Powered by 猫屋敷工房 & HTML Generator

http://www.neko.ne.jp/~freewing/fpga/arcade_invaders/