]> AND Private Git Repository - blast.git/commitdiff
Logo AND Algorithmique Numérique Distribuée

Private GIT Repository
modif in VHDLConverter
authorstephane Domas <stephane.domas@univ-fcomte.fr>
Wed, 10 Jan 2018 09:52:39 +0000 (10:52 +0100)
committerstephane Domas <stephane.domas@univ-fcomte.fr>
Wed, 10 Jan 2018 09:52:39 +0000 (10:52 +0100)
IfacePurposeDelegate.cpp [new file with mode: 0644]
IfacePurposeDelegate.h [new file with mode: 0644]
blast.creator.user.c8006d6 [new file with mode: 0755]
lib/references/rgb32-to-gs.xml [new file with mode: 0644]
rgb3sx8_to_gs.xml [new file with mode: 0644]
rgb3sx8_to_gs_impl.xml [new file with mode: 0644]
toto.xml [new file with mode: 0644]

diff --git a/IfacePurposeDelegate.cpp b/IfacePurposeDelegate.cpp
new file mode 100644 (file)
index 0000000..64bcf76
--- /dev/null
@@ -0,0 +1,60 @@
+// fichier enregistré en UTF-8
+
+#include "IfacePurposeDelegate.h"
+
+IfacePurposeDelegate::IfacePurposeDelegate(QObject *parent) : QItemDelegate(parent) {
+  
+  lstPurpose.append("any");
+  lstPurpose.append("data");
+  lstPurpose.append("control");
+  lstPurpose.append("clock");
+  lstPurpose.append("reset");
+  lstPurpose.append("wishbone");
+}
+
+QWidget* IfacePurposeDelegate::createEditor(QWidget *parent, const QStyleOptionViewItem &option , const QModelIndex &index) const {
+
+  int i;
+  
+  QComboBox *lst = new QComboBox(parent);
+  lst->setSizeAdjustPolicy (QComboBox::AdjustToContents);
+
+  for(int i=0;i<lstPurpose.size();i++) {
+    lst->addItem(lstPurpose.at(i));
+  }
+
+  lst->installEventFilter(const_cast<IfacePurposeDelegate*>(this));
+  lst->adjustSize();
+  
+  return lst;
+}
+
+void IfacePurposeDelegate::setEditorData(QWidget *editor, const QModelIndex &index) const {
+
+
+  int id = lstPurpose.indexOf(index.model()->data(index, Qt::DisplayRole).toString());
+  
+  QComboBox *lst = static_cast<QComboBox*>(editor);
+  lst->setCurrentIndex(id);
+
+}
+
+void IfacePurposeDelegate::setModelData(QWidget *editor, QAbstractItemModel *model, const QModelIndex &index) const {
+
+  int id;
+  QComboBox *lst = static_cast<QComboBox*>(editor);
+
+  id = lst->currentIndex();
+  cout << "update display" << endl;
+  model->setData(index, lst->currentText(), Qt::DisplayRole);  
+}
+
+void IfacePurposeDelegate::updateEditorGeometry(QWidget *editor, const QStyleOptionViewItem &option, const QModelIndex &/* index */) const {
+
+  QSize size = editor->size();
+
+  QRect rect = option.rect;
+  rect.setWidth(size.width());
+  editor->setGeometry(rect);
+
+}
diff --git a/IfacePurposeDelegate.h b/IfacePurposeDelegate.h
new file mode 100644 (file)
index 0000000..a3d6d08
--- /dev/null
@@ -0,0 +1,38 @@
+// fichier enregistré en UTF-8
+
+#ifndef __IFACEPURPOSEDELEGATE_H__
+#define __IFACEPURPOSEDELEGATE_H__
+
+#include <iostream>
+#include <fstream>
+
+#include <QtCore>
+#include <QtGui>
+#include <QtWidgets>
+
+using namespace std;
+using namespace Qt;
+
+
+class IfacePurposeDelegate : public QItemDelegate {
+
+  Q_OBJECT
+
+public:
+
+  
+  IfacePurposeDelegate(QObject *parent = 0);
+  
+  QWidget *createEditor(QWidget *parent, const QStyleOptionViewItem &option, const QModelIndex &index) const;
+  
+  void setEditorData(QWidget *editor, const QModelIndex &index) const;
+  void setModelData(QWidget *editor, QAbstractItemModel *model, const QModelIndex &index) const;
+  
+  void updateEditorGeometry(QWidget *editor, const QStyleOptionViewItem &option, const QModelIndex &index) const;
+
+private :
+
+  QList<QString> lstPurpose;
+};
+  
+#endif // __IFACEPURPOSEDELEGATE_H__
diff --git a/blast.creator.user.c8006d6 b/blast.creator.user.c8006d6
new file mode 100755 (executable)
index 0000000..8b99581
--- /dev/null
@@ -0,0 +1,198 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE QtCreatorProject>
+<!-- Written by QtCreator 4.2.0, 2017-10-15T20:15:50. -->
+<qtcreator>
+ <data>
+  <variable>EnvironmentId</variable>
+  <value type="QByteArray">{c8006d66-d34f-42be-ad10-d0207752286d}</value>
+ </data>
+ <data>
+  <variable>ProjectExplorer.Project.ActiveTarget</variable>
+  <value type="int">0</value>
+ </data>
+ <data>
+  <variable>ProjectExplorer.Project.EditorSettings</variable>
+  <valuemap type="QVariantMap">
+   <value type="bool" key="EditorConfiguration.AutoIndent">true</value>
+   <value type="bool" key="EditorConfiguration.AutoSpacesForTabs">false</value>
+   <value type="bool" key="EditorConfiguration.CamelCaseNavigation">true</value>
+   <valuemap type="QVariantMap" key="EditorConfiguration.CodeStyle.0">
+    <value type="QString" key="language">Cpp</value>
+    <valuemap type="QVariantMap" key="value">
+     <value type="QByteArray" key="CurrentPreferences">CppGlobal</value>
+    </valuemap>
+   </valuemap>
+   <valuemap type="QVariantMap" key="EditorConfiguration.CodeStyle.1">
+    <value type="QString" key="language">QmlJS</value>
+    <valuemap type="QVariantMap" key="value">
+     <value type="QByteArray" key="CurrentPreferences">QmlJSGlobal</value>
+    </valuemap>
+   </valuemap>
+   <value type="int" key="EditorConfiguration.CodeStyle.Count">2</value>
+   <value type="QByteArray" key="EditorConfiguration.Codec">UTF-8</value>
+   <value type="bool" key="EditorConfiguration.ConstrainTooltips">false</value>
+   <value type="int" key="EditorConfiguration.IndentSize">4</value>
+   <value type="bool" key="EditorConfiguration.KeyboardTooltips">false</value>
+   <value type="int" key="EditorConfiguration.MarginColumn">80</value>
+   <value type="bool" key="EditorConfiguration.MouseHiding">true</value>
+   <value type="bool" key="EditorConfiguration.MouseNavigation">true</value>
+   <value type="int" key="EditorConfiguration.PaddingMode">1</value>
+   <value type="bool" key="EditorConfiguration.ScrollWheelZooming">true</value>
+   <value type="bool" key="EditorConfiguration.ShowMargin">false</value>
+   <value type="int" key="EditorConfiguration.SmartBackspaceBehavior">0</value>
+   <value type="bool" key="EditorConfiguration.SmartSelectionChanging">true</value>
+   <value type="bool" key="EditorConfiguration.SpacesForTabs">true</value>
+   <value type="int" key="EditorConfiguration.TabKeyBehavior">0</value>
+   <value type="int" key="EditorConfiguration.TabSize">8</value>
+   <value type="bool" key="EditorConfiguration.UseGlobal">true</value>
+   <value type="int" key="EditorConfiguration.Utf8BomBehavior">1</value>
+   <value type="bool" key="EditorConfiguration.addFinalNewLine">true</value>
+   <value type="bool" key="EditorConfiguration.cleanIndentation">true</value>
+   <value type="bool" key="EditorConfiguration.cleanWhitespace">true</value>
+   <value type="bool" key="EditorConfiguration.inEntireDocument">false</value>
+  </valuemap>
+ </data>
+ <data>
+  <variable>ProjectExplorer.Project.PluginSettings</variable>
+  <valuemap type="QVariantMap"/>
+ </data>
+ <data>
+  <variable>ProjectExplorer.Project.Target.0</variable>
+  <valuemap type="QVariantMap">
+   <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Desktop</value>
+   <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Desktop</value>
+   <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">{2c9bf876-3476-44eb-8065-1f0844704dda}</value>
+   <value type="int" key="ProjectExplorer.Target.ActiveBuildConfiguration">0</value>
+   <value type="int" key="ProjectExplorer.Target.ActiveDeployConfiguration">0</value>
+   <value type="int" key="ProjectExplorer.Target.ActiveRunConfiguration">0</value>
+   <valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.0">
+    <value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory">/home/sdomas/Projet/Blast/code/blast</value>
+    <valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
+     <valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
+      <valuelist type="QVariantList" key="GenericProjectManager.GenericMakeStep.BuildTargets">
+       <value type="QString">all</value>
+      </valuelist>
+      <value type="bool" key="GenericProjectManager.GenericMakeStep.Clean">false</value>
+      <value type="QString" key="GenericProjectManager.GenericMakeStep.MakeArguments"></value>
+      <value type="QString" key="GenericProjectManager.GenericMakeStep.MakeCommand"></value>
+      <value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
+      <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
+      <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
+      <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">GenericProjectManager.GenericMakeStep</value>
+     </valuemap>
+     <value type="int" key="ProjectExplorer.BuildStepList.StepsCount">1</value>
+     <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Compiler</value>
+     <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
+     <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Build</value>
+    </valuemap>
+    <valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.1">
+     <valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
+      <valuelist type="QVariantList" key="GenericProjectManager.GenericMakeStep.BuildTargets">
+       <value type="QString">clean</value>
+      </valuelist>
+      <value type="bool" key="GenericProjectManager.GenericMakeStep.Clean">true</value>
+      <value type="QString" key="GenericProjectManager.GenericMakeStep.MakeArguments"></value>
+      <value type="QString" key="GenericProjectManager.GenericMakeStep.MakeCommand"></value>
+      <value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
+      <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
+      <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
+      <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">GenericProjectManager.GenericMakeStep</value>
+     </valuemap>
+     <value type="int" key="ProjectExplorer.BuildStepList.StepsCount">1</value>
+     <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Nettoyer</value>
+     <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
+     <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Clean</value>
+    </valuemap>
+    <value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">2</value>
+    <value type="bool" key="ProjectExplorer.BuildConfiguration.ClearSystemEnvironment">false</value>
+    <valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.UserEnvironmentChanges"/>
+    <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Défaut</value>
+    <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Défaut</value>
+    <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">GenericProjectManager.GenericBuildConfiguration</value>
+   </valuemap>
+   <value type="int" key="ProjectExplorer.Target.BuildConfigurationCount">1</value>
+   <valuemap type="QVariantMap" key="ProjectExplorer.Target.DeployConfiguration.0">
+    <valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
+     <value type="int" key="ProjectExplorer.BuildStepList.StepsCount">0</value>
+     <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Déploiement</value>
+     <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
+     <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Deploy</value>
+    </valuemap>
+    <value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">1</value>
+    <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Déployer localement</value>
+    <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
+    <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.DefaultDeployConfiguration</value>
+   </valuemap>
+   <value type="int" key="ProjectExplorer.Target.DeployConfigurationCount">1</value>
+   <valuemap type="QVariantMap" key="ProjectExplorer.Target.PluginSettings"/>
+   <valuemap type="QVariantMap" key="ProjectExplorer.Target.RunConfiguration.0">
+    <value type="bool" key="Analyzer.QmlProfiler.AggregateTraces">false</value>
+    <value type="bool" key="Analyzer.QmlProfiler.FlushEnabled">false</value>
+    <value type="uint" key="Analyzer.QmlProfiler.FlushInterval">1000</value>
+    <value type="QString" key="Analyzer.QmlProfiler.LastTraceFile"></value>
+    <value type="bool" key="Analyzer.QmlProfiler.Settings.UseGlobalSettings">true</value>
+    <valuelist type="QVariantList" key="Analyzer.Valgrind.AddedSuppressionFiles"/>
+    <value type="bool" key="Analyzer.Valgrind.Callgrind.CollectBusEvents">false</value>
+    <value type="bool" key="Analyzer.Valgrind.Callgrind.CollectSystime">false</value>
+    <value type="bool" key="Analyzer.Valgrind.Callgrind.EnableBranchSim">false</value>
+    <value type="bool" key="Analyzer.Valgrind.Callgrind.EnableCacheSim">false</value>
+    <value type="bool" key="Analyzer.Valgrind.Callgrind.EnableEventToolTips">true</value>
+    <value type="double" key="Analyzer.Valgrind.Callgrind.MinimumCostRatio">0.01</value>
+    <value type="double" key="Analyzer.Valgrind.Callgrind.VisualisationMinimumCostRatio">10</value>
+    <value type="bool" key="Analyzer.Valgrind.FilterExternalIssues">true</value>
+    <value type="int" key="Analyzer.Valgrind.LeakCheckOnFinish">1</value>
+    <value type="int" key="Analyzer.Valgrind.NumCallers">25</value>
+    <valuelist type="QVariantList" key="Analyzer.Valgrind.RemovedSuppressionFiles"/>
+    <value type="int" key="Analyzer.Valgrind.SelfModifyingCodeDetection">1</value>
+    <value type="bool" key="Analyzer.Valgrind.Settings.UseGlobalSettings">true</value>
+    <value type="bool" key="Analyzer.Valgrind.ShowReachable">false</value>
+    <value type="bool" key="Analyzer.Valgrind.TrackOrigins">true</value>
+    <value type="QString" key="Analyzer.Valgrind.ValgrindExecutable">valgrind</value>
+    <valuelist type="QVariantList" key="Analyzer.Valgrind.VisibleErrorKinds">
+     <value type="int">0</value>
+     <value type="int">1</value>
+     <value type="int">2</value>
+     <value type="int">3</value>
+     <value type="int">4</value>
+     <value type="int">5</value>
+     <value type="int">6</value>
+     <value type="int">7</value>
+     <value type="int">8</value>
+     <value type="int">9</value>
+     <value type="int">10</value>
+     <value type="int">11</value>
+     <value type="int">12</value>
+     <value type="int">13</value>
+     <value type="int">14</value>
+    </valuelist>
+    <value type="int" key="PE.EnvironmentAspect.Base">2</value>
+    <valuelist type="QVariantList" key="PE.EnvironmentAspect.Changes"/>
+    <value type="QString" key="ProjectExplorer.CustomExecutableRunConfiguration.Arguments"></value>
+    <value type="QString" key="ProjectExplorer.CustomExecutableRunConfiguration.Executable"></value>
+    <value type="QString" key="ProjectExplorer.CustomExecutableRunConfiguration.WorkingDirectory">%{buildDir}</value>
+    <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Custom Executable</value>
+    <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
+    <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.CustomExecutableRunConfiguration</value>
+    <value type="uint" key="RunConfiguration.QmlDebugServerPort">3768</value>
+    <value type="bool" key="RunConfiguration.UseCppDebugger">false</value>
+    <value type="bool" key="RunConfiguration.UseCppDebuggerAuto">true</value>
+    <value type="bool" key="RunConfiguration.UseMultiProcess">false</value>
+    <value type="bool" key="RunConfiguration.UseQmlDebugger">false</value>
+    <value type="bool" key="RunConfiguration.UseQmlDebuggerAuto">true</value>
+   </valuemap>
+   <value type="int" key="ProjectExplorer.Target.RunConfigurationCount">1</value>
+  </valuemap>
+ </data>
+ <data>
+  <variable>ProjectExplorer.Project.TargetCount</variable>
+  <value type="int">1</value>
+ </data>
+ <data>
+  <variable>ProjectExplorer.Project.Updater.FileVersion</variable>
+  <value type="int">18</value>
+ </data>
+ <data>
+  <variable>Version</variable>
+  <value type="int">18</value>
+ </data>
+</qtcreator>
diff --git a/lib/references/rgb32-to-gs.xml b/lib/references/rgb32-to-gs.xml
new file mode 100644 (file)
index 0000000..dc98d7e
--- /dev/null
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>\r
+<block>\r
+  <informations>\r
+    <name>\r
+      RGB32 (8 bits/serial) to grayscale\r
+    </name>\r
+    <category ids="4" />  \r
+    <description>\r
+      <brief>\r
+       This block does a conversion of an RGB32 pixel (8 bits/serial) into a grayscale value (8 bits).\r
+      </brief>\r
+      <detailed>\r
+       This block does a conversion of an RGB32 pixel into a grayscale value.\r
+       A RGB32 pixel is composed of 4 components: red, green, blue, transparency, each on 8 bits.\r
+       They are stored as in little-endian arch. which means that components must enter in the block\r
+       in the following order : transparency, blue, green, red.\r
+       The block does a simple average over the three values to obtain a grayscale pixel.\r
+       It also outputs the transparency component, in case of it should be used after.\r
+      </detailed>     \r
+    </description>    \r
+  </informations>\r
+\r
+  <parameters>\r
+  </parameters>\r
+\r
+  <interfaces>\r
+    <inputs>\r
+      <input name="clk" type="boolean" width="1" purpose="clock" />\r
+      <input name="rst" type="boolean" width="1" purpose="reset" />\r
+      \r
+      <input name="compo_i" type="natural" width="8" />\r
+      <control iface="compo_i" />\r
+    </inputs>\r
+    <outputs>\r
+      <output name="pix_o" type="natural" width="8" multiplicity="1"/>\r
+      <output name="transparency_o" type="natural" width="8" multiplicity="1"/>      \r
+      <control iface="pix_o" />\r
+      <control iface="transparency_o" />\r
+    </outputs>    \r
+  </interfaces>\r
+\r
+</block>\r
diff --git a/rgb3sx8_to_gs.xml b/rgb3sx8_to_gs.xml
new file mode 100644 (file)
index 0000000..d9583a1
--- /dev/null
@@ -0,0 +1,27 @@
+<!DOCTYPE rgb3sx8_to_gs>
+<block version="0.1">
+  <informations>
+    <name>rgb3sx8_to_gs</name>
+    <category ids=""/>
+    <description>
+      <brief>vcdsv</brief>
+      <detailed>vrevgfregaqv</detailed>
+    </description>
+  </informations>
+  <parameters>
+    <parameter name="dsp_in_width" context="generic" value="18" type="natural"/>
+    <parameter name="dsp_out_width" context="generic" value="36" type="natural"/>
+  </parameters>
+  <interfaces>
+    <inputs>
+      <input name="clk" width="1" endian="little" purpose="clock" type="boolean" multiplicity="1"/>
+      <input name="reset" width="1" endian="little" purpose="reset" type="boolean" multiplicity="1"/>
+      <input name="rgb_in" width="7" endian="little" purpose="data" type="natural" multiplicity="1"/>
+      <control iface="rgb_in"/>
+    </inputs>
+    <outputs>
+      <output name="gs_out" width="7" endian="little" purpose="data" type="natural" multiplicity="1"/>
+      <control iface="gs_out"/>
+    </outputs>
+  </interfaces>
+</block>
diff --git a/rgb3sx8_to_gs_impl.xml b/rgb3sx8_to_gs_impl.xml
new file mode 100644 (file)
index 0000000..05708e3
--- /dev/null
@@ -0,0 +1,86 @@
+<!DOCTYPE rgb3sx8_to_gs>
+<block_impl ref_md5="" ref_name="rgb3sx8_to_gs.xml">
+  <comments>
+    <author mail="" lastname="" firstname=""/>
+    <date creation=""/>
+    <description>vcdsv</description>
+    <notes>vrevgfregaqv</notes>
+  </comments>
+  <libraries>
+    <library name="ieee">
+      <package name="std_logic_1164" use="all"/>
+      <package name="numeric_std" use="all"/>
+    </library>
+  </libraries>
+  <architecture>
+-- Signals
+signal do_mult : std_logic;
+signal do_out : std_logic;
+signal count : unsigned (2 downto 0);
+signal accum : unsigned(dsp_in_width-1 downto 0);
+signal result : unsigned(dsp_out_width-1 downto 0);
+signal cst_mult : unsigned(dsp_in_width-1 downto 0); -- eq. 87382 to do /3
+
+begin
+
+cst_mult &lt;= to_unsigned(87382, 18);
+
+accum_process : process (clk, reset)
+begin
+if reset = '1' then
+count &lt;= to_unsigned(0, 3);
+accum &lt;= to_unsigned(0, dsp_in_width);
+do_mult &lt;= '0';
+
+elsif rising_edge(clk) then
+
+do_mult &lt;= '0';
+
+if rgb_in_enb = '1' then
+
+if count = 0 then
+accum &lt;= resize(unsigned(rgb_in), dsp_in_width);
+count &lt;= to_unsigned(1, 3);
+elsif count = 1 then
+accum &lt;= accum + resize(unsigned(rgb_in), dsp_in_width);
+count &lt;= to_unsigned(2, 3);
+elsif count = 2 then
+accum &lt;= accum + resize(unsigned(rgb_in), dsp_in_width);
+count &lt;= to_unsigned(0, 3);
+do_mult &lt;= '1';
+end if;
+end if;
+end if;
+
+end process accum_process;
+
+mult_process : process (clk, reset)
+begin
+if reset = '1' then
+result &lt;= to_unsigned(0, dsp_out_width);
+do_out &lt;= '0';
+elsif rising_edge(clk) then
+
+do_out &lt;= '0';
+if do_mult = '1' then
+result &lt;= accum * cst_mult;
+do_out &lt;= '1';
+end if;
+end if;
+end process mult_process;
+
+gs_out &lt;= std_logic_vector(result(dsp_in_width+7 downto dsp_in_width));
+gs_out_enb &lt;= do_out;
+
+end rtl;
+</architecture>
+  <patterns>
+    <delta value="to_define"/>
+    <consumption>
+      <input name="rgb_in_enb" pattern="to_define"/>
+    </consumption>
+    <production counter="to_define">
+      <output name="gs_out_enb" pattern="to_define"/>
+    </production>
+  </patterns>
+</block_impl>
diff --git a/toto.xml b/toto.xml
new file mode 100644 (file)
index 0000000..90db6c9
--- /dev/null
+++ b/toto.xml
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<blast_project>
+    <scenes count="1">
+        <scene id="0" upper_scene="-1">
+            <group_item id="1" upper_item="-1" name="top group" position="0,38" dimension="343,128">
+                <group_ifaces count="0"/>
+            </group_item>
+            <source_items count="0"/>
+            <block_items functional_count="1" group_count="0">
+                <bi_functional id="2" ref_xml="/home/sdomas/Projet/Blast/code/blast/lib/references/demux.xml" ref_md5="aeb14abd65f72dbd4af47b7a660cd94e" name="block demultiplexer" position="45,30" dimension="253,68">
+                    <bif_parameters>
+                        <bif_parameter name="val_width" value="0"/>
+                        <bif_parameter name="sel_width" value="$if_nb"/>
+                    </bif_parameters>
+                    <bif_ifaces count="5">
+                        <bif_iface id="1" name="clk" ref_name="clk" orientation="west" position="0"/>
+                        <bif_iface id="2" name="rst" ref_name="rst" orientation="west" position="0"/>
+                        <bif_iface id="3" name="val_i" ref_name="val_i" orientation="west" position="0.333333"/>
+                        <bif_iface id="4" name="sel_i" ref_name="sel_i" orientation="west" position="0.666667"/>
+                        <bif_iface id="5" name="val_o" ref_name="val_o" orientation="east" position="0.5"/>
+                    </bif_ifaces>
+                </bi_functional>
+            </block_items>
+        </scene>
+    </scenes>
+    <connections/>
+</blast_project>