How to increase clk frequency on an output pin in ESP 12e?

Hi, I'm Using a ESP 12-e module in arduino IDE. I want to generate a clock and a data on my pins to communicate with a custom device. Something like this:

This is my related piece of code:

 pinMode(CLK , OUTPUT);
  pinMode(DOUT , OUTPUT);
//
void Write_Bit_0(void){
    digitalWrite( DOUT , LOW );
    digitalWrite( CLK , HIGH );
    digitalWrite( CLK , LOW );
  }
void Write_Bit_1(void){
    digitalWrite( DOUT , HIGH);
    digitalWrite( CLK , HIGH );
    digitalWrite( CLK , LOW );
  }
//
....

My problem is to increase CLK frequency. it seems that digitalWrite command take about 800 ESP clock to run!(I measured it with ESP.getCycleCount()).
Can anyone suggest a solution to increase CLK frequency up to 8 Mhz?
Thanks

Hardware spi?
I don’t think you can get 8MHz with software.

https://forum.arduino.cc/index.php?topic=423340.0

I have once worked on a project and I was able to get maximum 5MHz output from Arduino Pins

Have you considered using the ESP8266 API to generate your desired clock frequencies? https://www.espressif.com/sites/default/files/documentation/2c-esp8266_non_os_sdk_api_reference_en.pdf