<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: Verilog: Declaring each port (or argument) once</title>
	<atom:link href="http://billauer.se/blog/2009/07/verilog-standard-short-port-declaration-output-reg-autoarg/feed/" rel="self" type="application/rss+xml" />
	<link>https://billauer.se/blog/2009/07/verilog-standard-short-port-declaration-output-reg-autoarg/</link>
	<description>Anything I found worthy to write down.</description>
	<lastBuildDate>Thu, 26 Mar 2026 13:15:15 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1.2</generator>
	<item>
		<title>By: Michael</title>
		<link>https://billauer.se/blog/2009/07/verilog-standard-short-port-declaration-output-reg-autoarg/comment-page-1/#comment-1596</link>
		<dc:creator>Michael</dc:creator>
		<pubDate>Thu, 12 May 2022 12:23:02 +0000</pubDate>
		<guid isPermaLink="false">https://billauer.se/blog/?p=324#comment-1596</guid>
		<description>When using the concise format, it is impossible to pass structs between modules</description>
		<content:encoded><![CDATA[<p>When using the concise format, it is impossible to pass structs between modules</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Evgeni</title>
		<link>https://billauer.se/blog/2009/07/verilog-standard-short-port-declaration-output-reg-autoarg/comment-page-1/#comment-886</link>
		<dc:creator>Evgeni</dc:creator>
		<pubDate>Fri, 09 Aug 2013 17:57:37 +0000</pubDate>
		<guid isPermaLink="false">https://billauer.se/blog/?p=324#comment-886</guid>
		<description>One use of duplicated port declaration I&#039;ve seen was in netlisting tool that converted transistor-level schematics into Verilog netlist. This was part of a fully custom chip design flow.

The tool was generating code like this:

module example( my_signal1[0], my_signal2[1:0],  
               {my_signal1[1], my_signal2[2]}  );
  input [1:0] my_signal1;
  input [2:0] my_signal2;

Don&#039;t know the reason why it did it that way. But it took advantage of the fact that Verilog allows flexible grouping of the module IO signals.  

Thanks,
Evgeni</description>
		<content:encoded><![CDATA[<p>One use of duplicated port declaration I&#8217;ve seen was in netlisting tool that converted transistor-level schematics into Verilog netlist. This was part of a fully custom chip design flow.</p>
<p>The tool was generating code like this:</p>
<p>module example( my_signal1[0], my_signal2[1:0],<br />
               {my_signal1[1], my_signal2[2]}  );<br />
  input [1:0] my_signal1;<br />
  input [2:0] my_signal2;</p>
<p>Don&#8217;t know the reason why it did it that way. But it took advantage of the fact that Verilog allows flexible grouping of the module IO signals.  </p>
<p>Thanks,<br />
Evgeni</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Tim</title>
		<link>https://billauer.se/blog/2009/07/verilog-standard-short-port-declaration-output-reg-autoarg/comment-page-1/#comment-861</link>
		<dc:creator>Tim</dc:creator>
		<pubDate>Fri, 12 Apr 2013 14:21:07 +0000</pubDate>
		<guid isPermaLink="false">https://billauer.se/blog/?p=324#comment-861</guid>
		<description>This is priceless! Having switched from VHDL to Verilog, I was always annoyed with these double port declarations. This easily cuts out a hundred lines of useless code.</description>
		<content:encoded><![CDATA[<p>This is priceless! Having switched from VHDL to Verilog, I was always annoyed with these double port declarations. This easily cuts out a hundred lines of useless code.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: eli</title>
		<link>https://billauer.se/blog/2009/07/verilog-standard-short-port-declaration-output-reg-autoarg/comment-page-1/#comment-414</link>
		<dc:creator>eli</dc:creator>
		<pubDate>Tue, 06 Apr 2010 19:45:05 +0000</pubDate>
		<guid isPermaLink="false">https://billauer.se/blog/?p=324#comment-414</guid>
		<description>I suppose there was some inside sabotage by VHDL guys.</description>
		<content:encoded><![CDATA[<p>I suppose there was some inside sabotage by VHDL guys.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Andy</title>
		<link>https://billauer.se/blog/2009/07/verilog-standard-short-port-declaration-output-reg-autoarg/comment-page-1/#comment-413</link>
		<dc:creator>Andy</dc:creator>
		<pubDate>Tue, 06 Apr 2010 19:39:12 +0000</pubDate>
		<guid isPermaLink="false">https://billauer.se/blog/?p=324#comment-413</guid>
		<description>I agree this format is much more concise and easier to read. I wonder what the reasoning was in Verilog 95 for requiring the dual input/output declaration?</description>
		<content:encoded><![CDATA[<p>I agree this format is much more concise and easier to read. I wonder what the reasoning was in Verilog 95 for requiring the dual input/output declaration?</p>
]]></content:encoded>
	</item>
</channel>
</rss>
