初心者ですがお願いします。
次のように、CHRCDEに入力した8bitのデータを前後にstart bit (1bit)と
stop bit (2bit)をつけて11bitにしてシリアルに連続して出したい
のですが次のモジュールを合成すると、入力がアースに落とされた形に
されてしまうのですが、どうしてでしょうか?ちなみに、XilinxのWebPACK7.1i
を使ってます。

module chargen(CLKIN, READY, CHRCODE, SEND, SIGOUT);
   input CLKIN;
   input READY;
   input [7:0] CHRCODE;
   input SEND;
   output SIGOUT;
   reg [10:0] charout ;
   reg bitout = 1;

      always @ (posedge CLKIN) begin
         if(READY) begin
            if (SEND) begin
               charout = {2'b11,CHRCODE,1'b0};
               bitout = charout[0];
               charout = charout >> 1;
               charout = {bitout,10'b0} | charout;
            end
         end else
         bitout = 1;
      end
   assign SIGOUT = bitout;
endmodule