From 953e783233a990eb6745b4c5a5e3dc1e7e344ec8 Mon Sep 17 00:00:00 2001 From: Peter Mlinko <link@hatchet> Date: Mon, 10 Dec 2018 13:52:40 +0100 Subject: [PATCH] Kuka --- .../game_of_life.cache/wt/gui_handlers.wdf | 14 +++---- .../wt/java_command_handlers.wdf | 8 ++-- .../game_of_life.cache/wt/webtalk_pa.xml | 24 ++++++------ .../sources_1/new/game_of_life.vhd | 39 ++++++++++++++----- game_of_life/game_of_life.xpr | 7 ++-- 5 files changed, 55 insertions(+), 37 deletions(-) diff --git a/game_of_life/game_of_life.cache/wt/gui_handlers.wdf b/game_of_life/game_of_life.cache/wt/gui_handlers.wdf index bdc286a..59c673e 100644 --- a/game_of_life/game_of_life.cache/wt/gui_handlers.wdf +++ b/game_of_life/game_of_life.cache/wt/gui_handlers.wdf @@ -7,14 +7,14 @@ version:1 70726f6a656374:76697661646f5f75736167655c6775695f68616e646c657273:637265617465636f6e73747261696e747366696c6570616e656c5f66696c655f6e616d65:31:00:00 70726f6a656374:76697661646f5f75736167655c6775695f68616e646c657273:63726561746573726366696c656469616c6f675f66696c655f6e616d65:32:00:00 70726f6a656374:76697661646f5f75736167655c6775695f68616e646c657273:646566696e656d6f64756c65736469616c6f675f646566696e655f6d6f64756c65735f616e645f737065636966795f696f5f706f727473:3138:00:00 -70726f6a656374:76697661646f5f75736167655c6775695f68616e646c657273:66696c6573657470616e656c5f66696c655f7365745f70616e656c5f74726565:3234:00:00 +70726f6a656374:76697661646f5f75736167655c6775695f68616e646c657273:66696c6573657470616e656c5f66696c655f7365745f70616e656c5f74726565:3331:00:00 70726f6a656374:76697661646f5f75736167655c6775695f68616e646c657273:666c6f776e6176696761746f727472656570616e656c5f666c6f775f6e6176696761746f725f74726565:33:00:00 70726f6a656374:76697661646f5f75736167655c6775695f68616e646c657273:67657474696e6773746172746564766965775f6372656174655f6e65775f70726f6a656374:32:00:00 70726f6a656374:76697661646f5f75736167655c6775695f68616e646c657273:6d61696e6d656e756d67725f6578706f7274:31:00:00 -70726f6a656374:76697661646f5f75736167655c6775695f68616e646c657273:6d61696e6d656e756d67725f66696c65:32:00:00 -70726f6a656374:76697661646f5f75736167655c6775695f68616e646c657273:6d61696e6d656e756d67725f6f70656e5f726563656e745f66696c65:31:00:00 -70726f6a656374:76697661646f5f75736167655c6775695f68616e646c657273:6d61696e6d656e756d67725f6f70656e5f726563656e745f70726f6a656374:31:00:00 -70726f6a656374:76697661646f5f75736167655c6775695f68616e646c657273:7061636f6d6d616e646e616d65735f6164645f736f7572636573:31:00:00 +70726f6a656374:76697661646f5f75736167655c6775695f68616e646c657273:6d61696e6d656e756d67725f66696c65:34:00:00 +70726f6a656374:76697661646f5f75736167655c6775695f68616e646c657273:6d61696e6d656e756d67725f6f70656e5f726563656e745f66696c65:32:00:00 +70726f6a656374:76697661646f5f75736167655c6775695f68616e646c657273:6d61696e6d656e756d67725f6f70656e5f726563656e745f70726f6a656374:32:00:00 +70726f6a656374:76697661646f5f75736167655c6775695f68616e646c657273:7061636f6d6d616e646e616d65735f6164645f736f7572636573:32:00:00 70726f6a656374:76697661646f5f75736167655c6775695f68616e646c657273:7061727463686f6f7365725f626f61726473:32:00:00 70726f6a656374:76697661646f5f75736167655c6775695f68616e646c657273:70726f6a6563746e616d6563686f6f7365725f63686f6f73655f70726f6a6563745f6c6f636174696f6e:31:00:00 70726f6a656374:76697661646f5f75736167655c6775695f68616e646c657273:70726f6a6563746e616d6563686f6f7365725f70726f6a6563745f6e616d65:31:00:00 @@ -23,5 +23,5 @@ version:1 70726f6a656374:76697661646f5f75736167655c6775695f68616e646c657273:73696d706c656f757470757470726f647563746469616c6f675f67656e65726174655f6f75747075745f70726f64756374735f696d6d6564696174656c79:31:00:00 70726f6a656374:76697661646f5f75736167655c6775695f68616e646c657273:73726363686f6f73657270616e656c5f6164645f68646c5f616e645f6e65746c6973745f66696c65735f746f5f796f75725f70726f6a656374:31:00:00 70726f6a656374:76697661646f5f75736167655c6775695f68616e646c657273:73726363686f6f73657270616e656c5f6372656174655f66696c65:33:00:00 -70726f6a656374:76697661646f5f75736167655c6775695f68616e646c657273:73796e7468657469636167657474696e6773746172746564766965775f726563656e745f70726f6a65637473:31:00:00 -eof:2151772892 +70726f6a656374:76697661646f5f75736167655c6775695f68616e646c657273:73796e7468657469636167657474696e6773746172746564766965775f726563656e745f70726f6a65637473:32:00:00 +eof:3909248522 diff --git a/game_of_life/game_of_life.cache/wt/java_command_handlers.wdf b/game_of_life/game_of_life.cache/wt/java_command_handlers.wdf index 13fcf2a..3a52735 100644 --- a/game_of_life/game_of_life.cache/wt/java_command_handlers.wdf +++ b/game_of_life/game_of_life.cache/wt/java_command_handlers.wdf @@ -1,9 +1,9 @@ version:1 -70726f6a656374:76697661646f5f75736167655c6a6176615f636f6d6d616e645f68616e646c657273:616464736f7572636573:31:00:00 +70726f6a656374:76697661646f5f75736167655c6a6176615f636f6d6d616e645f68616e646c657273:616464736f7572636573:32:00:00 70726f6a656374:76697661646f5f75736167655c6a6176615f636f6d6d616e645f68616e646c657273:636f726576696577:31:00:00 70726f6a656374:76697661646f5f75736167655c6a6176615f636f6d6d616e645f68616e646c657273:637573746f6d697a65636f7265:31:00:00 70726f6a656374:76697661646f5f75736167655c6a6176615f636f6d6d616e645f68616e646c657273:6564697464656c657465:31:00:00 -70726f6a656374:76697661646f5f75736167655c6a6176615f636f6d6d616e645f68616e646c657273:65646974756e646f:31:00:00 +70726f6a656374:76697661646f5f75736167655c6a6176615f636f6d6d616e645f68616e646c657273:65646974756e646f:3532:00:00 70726f6a656374:76697661646f5f75736167655c6a6176615f636f6d6d616e645f68616e646c657273:6e657770726f6a656374:32:00:00 -70726f6a656374:76697661646f5f75736167655c6a6176615f636f6d6d616e645f68616e646c657273:7361766566696c6570726f787968616e646c6572:31:00:00 -eof:2487913160 +70726f6a656374:76697661646f5f75736167655c6a6176615f636f6d6d616e645f68616e646c657273:7361766566696c6570726f787968616e646c6572:32:00:00 +eof:182065185 diff --git a/game_of_life/game_of_life.cache/wt/webtalk_pa.xml b/game_of_life/game_of_life.cache/wt/webtalk_pa.xml index 0bc088b..fa1f835 100644 --- a/game_of_life/game_of_life.cache/wt/webtalk_pa.xml +++ b/game_of_life/game_of_life.cache/wt/webtalk_pa.xml @@ -3,7 +3,7 @@ <!--The data in this file is primarily intended for consumption by Xilinx tools. The structure and the elements are likely to change over the next few releases. This means code written to parse this file will need to be revisited each subsequent release.--> -<application name="pa" timeStamp="Tue Nov 27 16:00:41 2018"> +<application name="pa" timeStamp="Sat Dec 8 11:48:01 2018"> <section name="Project Information" visible="false"> <property name="ProjectID" value="01722960b9c445a0b34a6663716d359c" type="ProjectID"/> <property name="ProjectIteration" value="1" type="ProjectIteration"/> @@ -17,13 +17,13 @@ This means code written to parse this file will need to be revisited each subseq <property name="ImplStrategy" value="Vivado Implementation Defaults" type="ImplStrategy"/> </item> <item name="Java Command Handlers"> -<property name="AddSources" value="1" type="JavaHandler"/> +<property name="AddSources" value="2" type="JavaHandler"/> <property name="CoreView" value="1" type="JavaHandler"/> <property name="CustomizeCore" value="1" type="JavaHandler"/> <property name="EditDelete" value="1" type="JavaHandler"/> -<property name="EditUndo" value="1" type="JavaHandler"/> +<property name="EditUndo" value="52" type="JavaHandler"/> <property name="NewProject" value="2" type="JavaHandler"/> -<property name="SaveFileProxyHandler" value="1" type="JavaHandler"/> +<property name="SaveFileProxyHandler" value="2" type="JavaHandler"/> </item> <item name="Gui Handlers"> <property name="AbstractCombinedPanel_ADD_ELEMENT" value="3" type="GuiHandlerData"/> @@ -34,14 +34,14 @@ This means code written to parse this file will need to be revisited each subseq <property name="CreateConstraintsFilePanel_FILE_NAME" value="1" type="GuiHandlerData"/> <property name="CreateSrcFileDialog_FILE_NAME" value="2" type="GuiHandlerData"/> <property name="DefineModulesDialog_DEFINE_MODULES_AND_SPECIFY_IO_PORTS" value="18" type="GuiHandlerData"/> -<property name="FileSetPanel_FILE_SET_PANEL_TREE" value="24" type="GuiHandlerData"/> +<property name="FileSetPanel_FILE_SET_PANEL_TREE" value="31" type="GuiHandlerData"/> <property name="FlowNavigatorTreePanel_FLOW_NAVIGATOR_TREE" value="3" type="GuiHandlerData"/> <property name="GettingStartedView_CREATE_NEW_PROJECT" value="2" type="GuiHandlerData"/> <property name="MainMenuMgr_EXPORT" value="1" type="GuiHandlerData"/> -<property name="MainMenuMgr_FILE" value="2" type="GuiHandlerData"/> -<property name="MainMenuMgr_OPEN_RECENT_FILE" value="1" type="GuiHandlerData"/> -<property name="MainMenuMgr_OPEN_RECENT_PROJECT" value="1" type="GuiHandlerData"/> -<property name="PACommandNames_ADD_SOURCES" value="1" type="GuiHandlerData"/> +<property name="MainMenuMgr_FILE" value="4" type="GuiHandlerData"/> +<property name="MainMenuMgr_OPEN_RECENT_FILE" value="2" type="GuiHandlerData"/> +<property name="MainMenuMgr_OPEN_RECENT_PROJECT" value="2" type="GuiHandlerData"/> +<property name="PACommandNames_ADD_SOURCES" value="2" type="GuiHandlerData"/> <property name="PartChooser_BOARDS" value="2" type="GuiHandlerData"/> <property name="ProjectNameChooser_CHOOSE_PROJECT_LOCATION" value="1" type="GuiHandlerData"/> <property name="ProjectNameChooser_PROJECT_NAME" value="1" type="GuiHandlerData"/> @@ -50,12 +50,12 @@ This means code written to parse this file will need to be revisited each subseq <property name="SimpleOutputProductDialog_GENERATE_OUTPUT_PRODUCTS_IMMEDIATELY" value="1" type="GuiHandlerData"/> <property name="SrcChooserPanel_ADD_HDL_AND_NETLIST_FILES_TO_YOUR_PROJECT" value="1" type="GuiHandlerData"/> <property name="SrcChooserPanel_CREATE_FILE" value="3" type="GuiHandlerData"/> -<property name="SyntheticaGettingStartedView_RECENT_PROJECTS" value="1" type="GuiHandlerData"/> +<property name="SyntheticaGettingStartedView_RECENT_PROJECTS" value="2" type="GuiHandlerData"/> </item> <item name="Other"> -<property name="GuiMode" value="4" type="GuiMode"/> +<property name="GuiMode" value="5" type="GuiMode"/> <property name="BatchMode" value="0" type="BatchMode"/> -<property name="TclMode" value="2" type="TclMode"/> +<property name="TclMode" value="3" type="TclMode"/> </item> </section> </application> diff --git a/game_of_life/game_of_life.srcs/sources_1/new/game_of_life.vhd b/game_of_life/game_of_life.srcs/sources_1/new/game_of_life.vhd index 3ea9267..b104fd4 100644 --- a/game_of_life/game_of_life.srcs/sources_1/new/game_of_life.vhd +++ b/game_of_life/game_of_life.srcs/sources_1/new/game_of_life.vhd @@ -24,7 +24,7 @@ use IEEE.STD_LOGIC_1164.ALL; -- Uncomment the following library declaration if using -- arithmetic functions with Signed or Unsigned values ---use IEEE.NUMERIC_STD.ALL; +use IEEE.NUMERIC_STD.ALL; -- Uncomment the following library declaration if instantiating -- any Xilinx leaf cells in this code. @@ -75,23 +75,42 @@ signal locked, inner_clk, one_sec_clk : STD_LOGIC; -- the cell_outputs signal holds the output of the cells -- the 0th element holds the boundary condition --- we have 64×48 cells +-- we have 60×80 cells signal cell_outputs : STD_LOGIC_VECTOR(0 to 4799); signal cell_flipvals : STD_LOGIC_VECTOR(0 to 4799); constant bound_cond : STD_LOGIC := '0'; +signal mode_switch : STD_LOGIC := '0'; +--signal i, j : UNSIGNED(12 downto 0); begin -table_of_cells: for i in 0 to 60 generate +table_of_cells: for i in 0 to 59 generate begin - row_of_cells: for j in 0 to 80 generate + row_of_cells: for j in 0 to 79 generate begin - - if i=0 and j=0 then - cell: - - endif; - + leftop_cell: if i = 0 and j = 0 generate + begin + cella: cell port map( + clk_1hz => one_sec_clk, + locked => locked, + switch => mode_switch, + flip_val => cell_flipvals(i*60 + j), + neighbours => bound_cond & bound_cond & bound_cond & bound_cond & cell_outputs(i*60 + j+1) & bound_cond & cell_outputs((i+1)*60 + j) & cell_outputs((i+1)*60 + j+1), + output => cell_outputs(i*60 + j) + ); + end generate; + + righttop_cell: if i = 0 and j = 0 generate + begin + cella: cell port map( + clk_1hz => one_sec_clk, + locked => locked, + switch => mode_switch, + flip_val => cell_flipvals(i*60 + j), + neighbours => bound_cond & bound_cond & bound_cond & cell_outputs(i*60 + j-1) & bound_cond & cell_outputs((i+1)*60 + j-1) & cell_outputs((i+1)*60 + j) & bound_cond , + output => cell_outputs(i*60 + j) + ; + end generate; end generate; end generate; diff --git a/game_of_life/game_of_life.xpr b/game_of_life/game_of_life.xpr index 0b1a2e4..08995ad 100644 --- a/game_of_life/game_of_life.xpr +++ b/game_of_life/game_of_life.xpr @@ -57,21 +57,20 @@ <FileSets Version="1" Minor="31"> <FileSet Name="sources_1" Type="DesignSrcs" RelSrcDir="$PSRCDIR/sources_1"> <Filter Type="Srcs"/> - <File Path="$PSRCDIR/sources_1/new/one_second_clock.vhd"> + <File Path="$PSRCDIR/sources_1/new/cell.vhd"> <FileInfo> <Attr Name="UsedIn" Val="synthesis"/> <Attr Name="UsedIn" Val="simulation"/> </FileInfo> </File> - <File Path="$PSRCDIR/sources_1/new/game_of_life.vhd"> + <File Path="$PSRCDIR/sources_1/new/one_second_clock.vhd"> <FileInfo> <Attr Name="UsedIn" Val="synthesis"/> <Attr Name="UsedIn" Val="simulation"/> </FileInfo> </File> - <File Path="$PSRCDIR/sources_1/new/cell.vhd"> + <File Path="$PSRCDIR/sources_1/new/game_of_life.vhd"> <FileInfo> - <Attr Name="AutoDisabled" Val="1"/> <Attr Name="UsedIn" Val="synthesis"/> <Attr Name="UsedIn" Val="simulation"/> </FileInfo> -- GitLab