Top Banner
Connect Four Project Fall 2011 Anna Grimley & Josh Mandich Lab Section: F
21

Fall 2011 Anna Grimley & Josh Mandich Lab Section: F.

Dec 13, 2015

Download

Documents

Amelia Doyle
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Fall 2011 Anna Grimley & Josh Mandich Lab Section: F.

Connect Four ProjectFall 2011Anna Grimley & Josh MandichLab Section: F

Page 2: Fall 2011 Anna Grimley & Josh Mandich Lab Section: F.

Connect Four Game

Objectives1. Create Verilog Code for Connect Four Logic2. Synthesize Code3. Create Layout

Page 3: Fall 2011 Anna Grimley & Josh Mandich Lab Section: F.

Project Constraints

Inputs Outputs

PONE 0:3 Red 0:15

PTWO 0:3 GREEN 0:15

START PONEWIN

PTWOWIN

0Boolean: 0000

10001

20010

30011

40100

50101

60110

70111

81000

91001

101010

111100

121101

131110

141110

151111

Game as Two PlayersMust use 4x4 matrix of LED’sPlayer must be able to start by using the START inputPONE always starts, PONE&PTWO can not give input simultaneously Player must be able to start by using the START input

Other times to think aboutMust not allow a player to overwrite previous selection.Must not allow player to play out of turnGame must stop when player winsA 4x4

Page 4: Fall 2011 Anna Grimley & Josh Mandich Lab Section: F.

Strategy• Keep code simple• Take into consideration what is synthesizable and

what is not• Start building code early and seek for help

Truly elegant design incorporates top-notch functionality into a simple, uncluttered form.

— David Lewis

Page 5: Fall 2011 Anna Grimley & Josh Mandich Lab Section: F.

Verilog HDL• At Start==0

sets all registers to 0. and turn=1

• Continues to check PONEWIN & PTWOWIN are zero at all steps

Page 6: Fall 2011 Anna Grimley & Josh Mandich Lab Section: F.

Verilog Code

Input and Start

Page 7: Fall 2011 Anna Grimley & Josh Mandich Lab Section: F.

Verilog Code

Light LED from User Input

Page 8: Fall 2011 Anna Grimley & Josh Mandich Lab Section: F.

Verilog Code

Detect Winning Input

Page 9: Fall 2011 Anna Grimley & Josh Mandich Lab Section: F.

Testing Verilog Code

Test Bench• Wanted to Test

Player can not keep playing when LED already selected

• Proved that PONEWIN would work when PONE had won

Page 10: Fall 2011 Anna Grimley & Josh Mandich Lab Section: F.

VSIM Testbench Output

Page 11: Fall 2011 Anna Grimley & Josh Mandich Lab Section: F.

SynthesizingSchematic of elaborated Verilog Connect 4. (Code in RTL compiler)

Page 12: Fall 2011 Anna Grimley & Josh Mandich Lab Section: F.

SynthesizingSchematic of Optimized Connect 4(Code integrated with OSU lib)

Page 13: Fall 2011 Anna Grimley & Josh Mandich Lab Section: F.

SynthesizingSchematic of Optimized Connect 4(Code integrated with OSU lib)

Page 14: Fall 2011 Anna Grimley & Josh Mandich Lab Section: F.

Synthesizing Schematic cell view of synthesized Connect4 code in Virtuoso

Page 15: Fall 2011 Anna Grimley & Josh Mandich Lab Section: F.

Layout• Initial Floor Plan• Floorplan layout

with power rings

Page 16: Fall 2011 Anna Grimley & Josh Mandich Lab Section: F.

LayoutCell and IO pin Placemnent

Page 17: Fall 2011 Anna Grimley & Josh Mandich Lab Section: F.

Layout• Power and Ground

Routing• Power Routing

between die I/O and standard cells

Page 18: Fall 2011 Anna Grimley & Josh Mandich Lab Section: F.

LayoutFinal layout view of Connect4.v in Encounter with filler added

Yay! Celebrate!!!

Page 19: Fall 2011 Anna Grimley & Josh Mandich Lab Section: F.

Final LayoutUsing OSU_stdcells_ami05 library.

Page 20: Fall 2011 Anna Grimley & Josh Mandich Lab Section: F.

Major Take Away’s• Understand what verilog can be synthesized and

what can not• Keep Verilog simple• Be patient with synthesizing and layout in

encounter/virtuoso• Spending time on HDL pays off in synthesizing

Page 21: Fall 2011 Anna Grimley & Josh Mandich Lab Section: F.

Ha Ha HaNot this Connect Four